1. 程式人生 > 其它 >python中的內建函式整理

python中的內建函式整理

1、內建函式:Python中自帶的函式。

2、常用的內建函式:
---------------------- ------------------數學運算:-------------------------------------------------
(1)abs(x): 絕對值函式 # print(abs(-1))
(2)rand(x,n):取浮點數的近似值 # x: 浮點數 n:保留小數位數,可不寫,取整數。
(3)pow(x,y):求次方 # print(pow(3,3)) ,3的3次方。
(4)divmod(a,b):返回回商和餘: # divmod(9,3) 執行結果:(3,0)
(5)max(a,b,c):求最大值,可以是一個序列(元組或列表中最大的),也可以是幾個數之間 # prin(max([1,2,3,4])) or prin(max(1,2,3,4))
(6)sum(iterable,a):求和 # iterable為可迭代物件(可遍歷的),如:一個元組、列表、集合。 a:為相加的數,沒有預設為0.
(7)eval("表示式",字典物件):可以執行一個表示式,或一個函式。當要賦值時,後面需為一個字典物件。
例1:呼叫函式
def one():
print("eval呼叫函數了嗎?")
pass
eval("one()")
例2:執行表示式:
a,b,c = 1,2,3
print(eval("a+b-c"))
例3:執行表示式、賦值:
a,b,c = 1,2,3
print(eval("a+b+c", {"a":2,"b":3,"c":4} ))

---------------------------型別轉換函式---------------------------------------
(1)10機制轉換為2進位制:bin(num) # print(bin(10))
(2)10進位制轉換為16進位制:hex(num) # print(bin(10))
(3)元組轉換為列表:list(元組名) # tuple1= (1,2,3,4) li = list(tuple)
(4)列表轉換為元組:typle(列表名)
(5)轉換為字典:dic1 = dict(age=18, name="小花") # 輸出:{'age': 18, 'name': '小花'}
(6)位元組轉換:bytes("內容",encode("utf-8")) # 轉換為utf-8碼
(7)將數字轉換為對應的ASCII碼:chr(num) #
(8)轉換為布林型別:bool()
(9)轉換為8進位制:oct()
(10)轉換為字串:str()

---------------------------序列(字串、元組、列表)操作函式-----------------------------------------------
iterable可迭代引數:例如元組、列表、字串等。
(1)all(iterable):所有元素都不為0、空、FALSE(所有都為真),才返回true。 注意:空元組、空列表返回true。 # print(all([1,2,3,0])) # false
(2)any(iterable):只要有1個不是0、空、FALSE(只要有一個為真),就返回true。
(3)li.sort() 和 sorted(li): 排序。
<1>sort():只能對list進行排序,預設從小到大排,修改的是原始物件,可以直接輸出原來的。
li = [12,4,8,1,0]
li.sort()
print(li)
<2>sorted():可以對所有序列進行排序,預設從小到大排,排序後是建立一個新的物件,所以要再賦值輸出。
錯誤:輸出的仍為未排序:
li = [12,4,8,1,0]
sorted(li)
print(li)
正確:(列表)
li = [12,4,8,1,0]
li1 = sorted(li) # 從小到大
li2 = sorted(li,reverse = True) #從大到小
print(li1)
元組排序:
tuple1 = {1,2,6,0}
tuple2 = sorted(tuple1,reverse=True)
print(tuple2)

預設升序:sorted(li),,reverse =False ,reverse省略。
改為降序:sorted(li,reverse = True)

(4)reverse():反轉輸出
li = [3,1,0,9]
li.reverse()
print(li)      # [9, 0, 1, 3]


(5)range(start,stop,step):建立一個整數序列,一般在for迴圈中使用.

(6)split(“ ”,num): 通過指定分隔符對字串進行分割,並返回一個列表,預設分隔符為所有空字元,包括空格、換行(\n)、製表符(\t)。num代表分隔成num+1份。
例:
str1 = "123 4 56 789"
print(str1.split(" ")) #編譯:['123', '4', '56', '789']
print(str1.split(" ",1)) # 編譯:['123', '4 56 789']

(6)zip():用來對應打包:
# s1 = ["a","b","c"]
# s2 = ["1","2"] # 當有一個元素少時,以元素少的個數為準對應。
# s3 = ["你","是","誰"]
# print(list(zip(s1,s2,s3))) # 編譯:[('a', '1', '你'), ('b', '2', '是')]

 1 # zip()打包函式實現圖書資訊的錄用和管理。
 2 def printBookInfo():
 3     """
 4     統一錄入圖書資訊,最後一每本形式輸出資訊。
 5     :return:
 6     """
 7     booksInfo = []               # 圖書總資訊。
 8 
 9     id = input("請輸入圖書編號(以空格分開):")
10     bookName = input("請輸入對應圖書名字(以空格分開):")
11     bookPos = input("請輸入對應圖書貨架(以空格分開):")
12 
13     idList = id.split(" ")    #  split() 通過指定分隔符(空格)對字串進行切片,預設返回一個列表,否則他會將空格也作為一個元素
14     bookNameList = bookName.split(" ")
15     bookPosList = bookPos.split(" ")
16     print(idList)        
17     print(bookNameList)
18     print(bookPosList)
19 
20     bookInfo = list(zip(idList,bookNameList,bookPosList))    # 將3個列表依次以列表形式對應打包,放入總圖書資訊中。
21     print(bookInfo)
22 
23     for bookItem in bookInfo:
24         print(bookItem)         # 遍歷輸出每一本圖書資訊。
25         dictBook = {"編號":bookItem[0],"書名":bookItem[1],"貨架":bookItem[2]}     # 將元組型轉變為字典型。
26         print(dictBook)         # 字典形式輸出。
27         pass
28 
29 printBookInfo()

(7)enumerate():下標索引與元素對應輸出元組:
例1:
list1 = ["你好","在嗎","好的"]

for item in enumerate(list1):
print(item) # (0, '你好') (1, '在嗎') (2, '好的')
print(item[1]) # 你好 在嗎 好的


例2(分隔開來):
for index,item in enumerate(list1):
print(index)     # 0 1 2