python函式和模組 python內建函式與模組

2021-10-11 00:03:39 字數 3148 閱讀 9988

一、函式中如果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...