一、函式中如果return是多個引數,只用乙個引數接收時,是元組;也可以用多個引數接收,那就是解包
def func():
a = 1
b = 2
c = 3
return a,b,c
q,w,e = func()
print(func(),type(func()),q,w,e)
輸出:(1, 2, 3) 1 2 3
二、函式自己呼叫自己,遞迴
最大的遞迴次數是:999
#1、盡量少用global 變數,一直占用記憶體
#2、函式即變數
三、內建函式
zip可以利用zip直接把兩個列表轉成二維陣列,再利用dict即可轉成字典:
a = [1,2,3]
b = ['z','y','b']
print(dict(zip(b,a)))
all any
print(all([1,2,3,4,0])) #判斷傳入的引數是否都為真,都為真才返回ture,否則為false
print(any([1,2,0])) #判斷傳入的引數是否都為假,都為假才返回false,否則為true
locals()#返回函式的區域性變數
# def func():
# a= 1
# b = 2
# print(locals())#返回函式的區域性變數
# func()
sorted()
l = [1,2,5,7,6,9]
l1 = sorted(l) #公升序排列,返回乙個新的list
l2 = sorted(l,reverse=true) #降序排列,返回乙個新的list
l.sort() #也是排序,但是不返回,只是改變原來list
l3 = [
['xiaohai',5],
['xiaohei',8],
['xiaoming',30],
['zyb',7]
l4 = sorted(l3,reverse=true,key = lambda x:x[-1]) #key這個引數可以把二維陣列進行排序
print(l4)
filter()
result = filter(lambda x:x>5,[12,3,12,2,1,2,35]) #過濾
print(list(result)) #輸出:[12, 12, 35]
map()
l = [12,3,12,2,1,2,35]
result = filter(lambda x:x>5,l) #直接把滿足條件的元素返回
print(list(result)) #輸出:[12, 12, 35]
result = map(lambda x:x>5,l) #直接儲存函式的返回值
print(list(result)) #輸出:[true, false, true, false, false, false, true]
result = map(lambda x:str(x).strip().zfill(3),l) #直接儲存函式的返回值
print(list(result)) #輸出:['012', '003', '012', '002', '001', '002', '035']
result = [str(i).strip().zfill(3) for i in l] #列表生成式也可以實現上述功能
print(result) #輸出:['012', '003', '012', '002', '001', '002', '035']
enumerate()
l = [12,3,12,2,1,2,35]
l1 = ['購物','註冊','充值','積分查詢']
index = 0
for i in l :
print('%s --> %s'%(index,i))
index +=1
for index,i in enumerate(l): #enumerate 自動計算下標,會生成二維陣列
print(index,i)
輸出:0 12
1 32 12
3 24 1
5 26 35
for index,i in enumerate(l1,1): #enumerate 自動計算下標,會根據第乙個引數生成二維陣列,第二個引數是指定下標從幾開始
print(index,i)
輸出:1 購物
2 註冊
3 充值
4 積分查詢
eval() 執行python**,只能執行簡單的。定義資料型別和運算
exec() #執行python**
四、匿名函式:
lambda x,y:x+y #lamda是用來定義匿名函式,冒號前面的是入參,後面是返回表示式
五、匯入模組
1、就是乙個python檔案
2、標準模組,python自帶的
3、第三方模組,需要自己安裝
import 乙個模組,就是把該模組的**執行一遍
匯入模組的順序:
1、先從當前目錄
2、從python環境變數裡面找
import 乙個資料夾的時候,就是執行資料夾下__init__.py的檔案
新增python環境變數的方法:
2、sys.path.insert(0,r'd:\pythontrainning_besttest\sheshouzuo\exercise\day4')
3、在pycharm裡面右鍵資料夾,mark directory as -->sourcese root,也可以新增到sys.path
第三方模組安裝:
1、python安裝目錄
2、python安裝目錄下script目錄
需要把上面路徑加入系統變數。
import random
number = random.randint(1,100) #隨機整數
print(number)
f = random.uniform(1,100) #隨機小數
print(f)
l = [1,2,3,4,5,6,7,8,9,10]
print(random.choice(l))
print(random.sample(l,3))
random.shuffle(l) #洗牌,打亂
print(l)
Python 函式和模組
函式包含 函式名字 引數 函式體 定義乙個簡單的echo函式,來模仿linux中的echo defecho mesage print mesage echo 1234 1234 echo 1232efsfds 1232efsfds echo 324324fdf 324324fdf defecho m...
python函式和模組
python中的函式有以下幾個特點 代表執行單獨的操作 採用零個或多個作為輸入 返回值作為輸出 冪函式符號 用於計算方程,也可用pow代替運算子 例如 2 8 可以用pow 2,8 來表示 1.python模組介紹 2.time datetime 3.random.4.os 5.sys 6.shut...
python函式和模組
def來定義函式,在函式執行完成後可以通過return來返回乙個值,相當於函式上的因變數。函式的重構 在不影響函式執行結果的前提下,對函式的結構進行調整。模組管理 由於沒有函式過載概念,同時定義兩個函式,後面的會覆蓋前面的 def main print 123456 def main print a...