函數定義:
目前創新互聯公司已為上千多家的企業提供了網站建設、域名、網站空間、網站運營、企業網站設計、始興網站維護等服務,公司將堅持客戶導向、應用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協力一起成長,共同發展。
Common_multiple(number1, number2):? # 求兩個數的最小公倍數
Maximum_common_divisor(*number):? # 求任意多個數的最小公倍數
Minimum_common_multiple(*number):? # 求任意多個數的最大公因數
程序縮進如下:
程序縮進
運行結果展示:
運行結果
函數具體代碼:縮進版本點擊自取
def Common_multiple(number1, number2):? # 求兩個數的最小公倍數
while number1 % number2 != 0:
number1, number2 = number2, (number1 % number2)
return number2
def Maximum_common_divisor(*number):? # 求任意多個數的最小公倍數
while len(number) 1:
number = [Common_multiple(number[i], number[i+1]) for i in range(0, len(number)-1)]
return number[0]
def Minimum_common_multiple(*number):? # 求任意多個數的最大公因數
while len(number) 1:
number = [number[i]*number[i+1]/Common_multiple(number[i], number[i+1]) for i in range(0, len(number)-1)]
return number[0]
我們經常會用到python的內置函數,但python庫中的內置函數何其之多,有時候難免會忘了這個函數的功能。這時候我們可以在
pycharm中把鼠標定位到這個函數,然后用快捷鍵Ctrl+B去查看:
更多技術請關注Python視頻教程。
16年年會抽獎網上有人對公司的抽獎結果又偏見,于是全員進行了抽獎代碼的review,好像是愛奇藝公司的,下面用python來實現一個抽獎程序。
主要功能有
1.從一個csv文件中讀入所有員工工號
2.將這些工號初始到一個列表中
3.用random模塊下的choice函數來隨機選擇列表中的一個工號
4.抽到的獎項的工號要從列表中進行刪除,以免再次抽到
初級版
這個比較簡單,缺少定制性,如沒法設置一等獎有幾名,二等獎有幾名
import csv#創建一個員工列表emplist = []#用with自動關閉文件with open('c://emps.csv') as f:
empf = csv.reader(f) for emp in empf:
emplist.append(emp)
print("進行一等獎抽獎,共有一名")import random#利用random模塊的chice函數來從列表中隨機選取一個元素e1 = random.choice(emplist)#將中獎的員工從列表中剔除emplist.remove(e1)
print('一等獎得主的號碼是 %s' % e1)
print('進行三個二等獎的號碼抽獎')
e2_1 = random.choice(emplist)
emplist.remove(e2_1)
e2_2 = random.choice(emplist)
emplist.remove(e2_2)
e2_3 = random.choice(emplist)
emplist.remove(e2_3)
print('獲得3個二等獎是 %s %s %s',(e2_1,e2_2,e2_3))#下面依次類推可以設置三等獎的抽獎123456789101112131415161718192021222324
改進版
上面的那個初級版,假如要設置個三等獎一百名那么將要重新維護幾百行代碼,下面用比較高級點的辦法實現.
我們考慮用面向對象來實現,設計一個抽獎類,類中包含一個屬性(號碼來源),一個方法:產生所有抽獎層次指定個數的抽獎號碼。
用到如下知識點:
1. csv模塊部分函數用法
2. sys模塊讀取輸入
3. random模塊函數choice函數用法
4. 列表和字典元素的添加、刪除
6. for循環中range用法
7. 類和面向對象
8. 字符打印,print中的計算
9.open中with
#!/usr/bin/python#coding=utf-8import csvimport sysimport random
reload(sys)
sys.setdefaultencoding('utf8')#coding=utf-8print("開始進行抽獎")#定義個抽獎類,功能有輸入抽獎級別和個數,打印出每個級別的抽獎員工號碼class Choujiang:
#定義scv文件路徑
def __init__(self,filepath):
self.empfile = filepath def creat_num(self):
emplist = [] with open(self.empfile) as f:
empf = csv.reader(f) for emp in empf:
emplist.append(emp)
print('共有%s 人參與抽獎' % len(emplist))
levels = int(input('抽獎分幾個層次,請輸入:')) #定義一個字典
level_dict = {} for i in range(0,levels):
print('請輸入當前獲獎層次 %s 對應的獎品個數' % ( i + 1))
str_level_dict_key = sys.stdin.readline()
int_level_dict_key = int(str_level_dict_key)
level_dict[i] = int_level_dict_key #循環完成后抽獎層次字典構造完畢
#進行抽獎開始
print('抽獎字典設置為: %s' % level_dict) for i in range(0,len(level_dict)):
winers = [] #產生當前抽獎層次i對應的抽獎個數
for j in range(0,int(level_dict[i])): #利用random模塊中的choice函數從列表中隨機產生一個
winer = random.choice(emplist)
winers.append(winer)
emplist.remove(winer)
print('抽獎層次 %s 下產出的獲獎人員有:' % (i + 1 ))
print(winers)#類功能定義完畢,開始初始化并使用if __name__ == '__main__':
peoples = Choujiang('c://emps.csv')
peoples.creat_num()1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
該段程序在python 2.6 以上及 3中均可以運行,運行結果如下圖:
Python 3.4.3 (v3.4.3:9b73f1c3e601, Feb 24 2015, 22:44:40) [MSC v.1600 64 bit (AMD64)] on win32
Type "copyright", "credits" or "license()" for more information. ================================ RESTART ================================ 開始進行抽獎
共有24790 人參與抽獎
抽獎分幾個層次,請輸入:2請輸入當前獲獎層次 1 對應的獎品個數1請輸入當前獲獎層次 2 對應的獎品個數3抽獎字典設置為: {0: 1, 1: 3}
抽獎層次 1 下產出的獲獎人員有:
[['張三19826']]
抽獎層次 2 下產出的獲獎人員有:
[['張三18670'], ['張三23235'], ['張三15705']] 1234567891011121314151617
例如stat位于os module,那么可以help(os),出現如上圖的結果,其中FILE就是其源文件位置,當然,如果這個module是c module,那就看不到相應的源碼了。
你提到os模塊中沒有stat這個函數,那時因為它在posix或者nt module中實現,os模塊根據當前的操作系統來導入相應的實現。
python 所有版本的源代碼可以在這里下載到:
python沒有像matlab那樣的函數可以直接查看某個函數的源代碼,只有去下載整個源代碼查看了,不過找起來應該也不難,另外你也可以寫一個小程序來查看對應函數的源代碼。
Python的函數調用方式是通過import來調用的對應的py文件。
庫函數有內建函數build_in(會寫python的時候已經可以不用看了,不會寫的時候看也看不懂),和通過pip直接下載或者github上下載再安裝的函數。本質上都是py文件。后者有時候由于環境的不同需要自行修改(這種情況較少),一般在安裝路徑下"\Lib\site-packages"文件夾中存在。
學習庫函數最好的方法是看網上官方的幫助文檔,此外還可以通過python自帶的dir()方法查看所有的屬性和方法,或者用help()方法查看幫助文檔(部分別人造的輪子不一定有)。
另外推薦使用ipython,Python創始人之一的成員編寫的交互式系統。
三種?法可以查看內建模塊的代碼,以random模塊為例:
1. 使?help(random)
2. 利?random.__file__查看位置,然后打開后綴名為.py的?件。
3. 命令?輸?python -v,然后倒?模塊時,會?動顯?位置。
文章題目:python抽出函數代碼,python 抽樣函數
URL地址:http://m.kartarina.com/article12/hddjgc.html
成都網站建設公司_創新互聯,為您提供軟件開發、微信公眾號、關鍵詞優化、建站公司、外貿建站、企業建站
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯