Python中內置函數


 python提供了很多的內置函數,這些內置的函數在某些情況下,可以起到很大的作用,而不需要專門去

寫函數實現XX功能,直接使用內置函數就可以實現,下面分別來學習內置函數的使用和案例代碼。

abs(),bytes(),chr(),ord(),eval(),compile(),dir(),help(),divmod(),isinstance(),filter(),map(),
globals(),max(),min(),sum(),type(),len(),range(),input(),tuple()

 

 

    1、abs(),該內置函數的作用是絕對值,不管數字是負數還是正數,結果都是正數,見實現的代碼

截圖:

   2、bytes(),把字符串轉為bytes,見設置一個原始字符串,轉為bytes,並且編碼是utf-8,下面來見

string與bytes之間的轉換方法,見代碼:

1
2
3
4
5
6
s = 'python語言'
print ( '未轉之前:' , type (s))
a = bytes(s,encoding = 'utf-8' )
print ( '字符串轉為bytes后:' ,a, type (a))
b = str (a,encoding = 'utf-8' )
print ( 'bytes轉為字符串后:' ,b, type (b))

見執行后的結果,見截圖:

   3、chr()把數字轉換為字母,見截圖:

  4、ord()剛好與chr()相反,把字母轉換為數字,見截圖:

使用chr()與ord()可以實現隨機的驗證碼,見實現的代碼:

1
2
3
4
5
6
7
import   random
 
li = []
for  in  range ( 6 ):
     r = random.randrange( 65 , 91 )
     li.append( chr (r))
print (''.join(li))

   5、eval()字符串轉換成表達式並獲取結果,見實現的過程以及結果:

   6、compile()是把字符串編譯成python代碼,再由函數eval(),exec()執行,見實現的過程以及代碼:

   7、dir()可以快速的查看對象提供了那些方法,如查看列表的方法,見截圖:

   8、help()顧名思義查看幫助,如查看列表的備幫助,見截圖:

    9、divmod()是整除求余,如97除以10,整除是9,余數是7,見實現的結果:

   10、isinstance()判斷對象是否是某個類的實例,見實現的代碼和實現的結果:

   11、filter()函數是過濾,如從列表中過濾出xx來,見實現的代碼:

如上函數是過濾出列表中大於2的值,過濾后的列表li為3,4,5,6,7,8,9,10,使用filter實現的代碼為:

1
2
3
4
5
6
7
li = [ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 ]
 
def  f1(a):
     if  a> 2 :
         return  True
res = filter (f1,li)
print ( list (res))

結合匿名函數lambda函數后,實現的過程更加簡單,見實現的代碼:

1
2
3
4
li = [ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 ]
 
res = filter ( lambda  a:a> 2 ,li)
print ( list (res))

  12、map()函數可以實現迭代的增加,如有列表[0,1,2,3,4,5,6,7,8,9],都加10,實現的代碼為:

1
2
3
4
5
6
7
8
li = [ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 ]
 
def  f1():
     result = []
     for  in  li:
         result.append(i + 10 )
     return  result
print (f1())

使用map函數,實現的代碼為:

1
2
3
4
5
6
li = [ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 ]
 
def  f1(a):
     return  a + 10
result = map (f1,li)
print ( list (result))

結合lambda函數,實現的代碼更加精簡,見實現的代碼:

1
2
3
4
li = [ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 ]
 
result = map ( lambda  a:a + 10 ,li)
print ( list (result))

 13、globals()代表所有的全局變量,locbals()代表所有的局部變量,見實現的代碼和實際輸出結果:

  14、max()獲取最大值,min()獲取最小值,sum()獲取和,見執行的結果截圖:

   15、type()查看類型,見結果:

16、len()方法

Python len() 方法返回對象(字符、列表、元組等)長度或項目個數。

len()方法語法:

len( s )
參數:
s -- 對象。
返回值:返回對象長度

以下實例展示了 len() 的使用方法:

str = "runoob"
len(str)             # 字符串長度
# 6
l = [1,2,3,4,5]
len(l)               # 列表元素個數
# 5

 17、range()

python range() 函數可創建一個整數列表,一般用在 for 循環中。

函數語法

range(start, stop[, step])

參數說明:

  • start: 計數從 start 開始。默認是從 0 開始。例如range(5)等價於range(0, 5);
  • stop: 計數到 stop 結束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]沒有5
  • step:步長,默認為1。例如:range(0, 5) 等價於 range(0, 5, 1)

實例

>>>range(10)        # 從 0 開始到 10
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> range(1, 11)     # 從 1 開始到 11
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> range(0, 30, 5)  # 步長為 5
[0, 5, 10, 15, 20, 25]
>>> range(0, 10, 3)  # 步長為 3
[0, 3, 6, 9]
>>> range(0, -10, -1) # 負數
[0, -1, -2, -3, -4, -5, -6, -7, -8, -9]
>>> range(0)
[]
>>> range(1, 0)
[]

以下是 range 在 for 中的使用,循環出runoob 的每個字母:

>>>x = 'runoob'
>>> for i in range(len(x)) :
...     print(x[i])
... 
r
u
n
o
o
b
>>>

18、input()

Python3.x 中 input() 函數接受一個標准輸入數據,返回為 string 類型。

Python2.x 中 input() 相等於 eval(raw_input(prompt)) ,用來獲取控制台的輸入。

raw_input() 將所有輸入作為字符串看待,返回字符串類型。而 input() 在對待純數字輸入時具有自己的特性,它返回所輸入的數字的類型( int, float )。

注意:input() 和 raw_input() 這兩個函數均能接收 字符串 ,但 raw_input() 直接讀取控制台的輸入(任何類型的輸入它都可以接收)。而對於 input() ,它希望能夠讀取一個合法的 python 表達式,即你輸入字符串的時候必須使用引號將它括起來,否則它會引發一個 SyntaxError 。

除非對 input() 有特別需要,否則一般情況下我們都是推薦使用 raw_input() 來與用戶交互。

注意:python3 里 input() 默認接收到的是 str 類型。

函數語法

input([prompt])

參數說明:

  • prompt: 提示信息

實例

Python3.x: input()

>>>a = input("input:")
input:123                  # 輸入整數
>>> type(a)
<class 'str'>              # 字符串
>>> a = input("input:")    
input:runoob              # 正確,字符串表達式
>>> type(a)
<class 'str'>             # 字符串

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM