1. 程式人生 > >Python常用的內建函式

Python常用的內建函式

 

 

 

一、數學運算類

  1#abx(x)    求絕對值   abx(-6)     >>  (6)

          1>引數可以是整型,也可以是複數

     2>引數如果是複數,則返回複數的模

  2#complex(x,y)   建立一個複數    complex(5,6)     >>  (5+6j)

  3#divmod(x,y)    分別取商和餘數,整型和浮點型都可以      divmod(7.5,3.5)    >>  (2.0, 0.5)

  4#float(x)     將一個字串或整數轉換為浮點數,如果無引數將返回0.0    float(4)  >> (4.0)

  5# int(x,base)       將一個字串或浮點數轉換為整數,如果無引數將返回0       int(4.00)  >>(4)

  6#long(x,base)     將一個字元轉換為long型別

  7#pow(x,y)       返回x的y次冪      pow(2,3)    >>    (8)

  8#round(x,y)   四捨五入        round(4.563111347,3)     >>     (4.563)

  9# sum(iterable[, start])   對集合求和

  10#oct(x)    將一個數字轉化為八進位制   oct(23)   >>  (Oo27)

  11#hex(x)   將整數x轉換為十六進位制的字串   hex(100)   >>  (64)

  12#chr(x)   將x對應的數轉化為Asill所對應的數    chr(65)   >>  (A)     chr(97)   >>  (a)

  13#bin(x)   將整數x轉化為二進位制的字串     bin(3)   >>    (ob11)

  14#bool(x)   將x轉化為boolean型別     bool(3)   >>   (True)    bool(0)    >>  (False)    

二、作用域相關方法    

  15#globals()             獲取全域性變數的字典

  16#locals()    獲取執行本方法所在名稱空間內的區域性變數的字典

 

三、其他方法 

  字串程式碼型別的執行  evel  exec  compile 

  17#evel()     將字串型別的程式碼執行完並返回結果   evel('1+2+3+4+5')   >>  (15)

  18#exec()    將字串型別的程式碼執行    print(exec("1+2+3+4"))   >>   None     exec("print('hello,world')")    >>   hello,world

  19#compile()   將字串型別的程式碼編譯,程式碼物件能夠通過exec語句來執行或者eval()進行求值

    引數說明:

    1> 引數source:字串或者AST(Abstract Syntax Trees)物件。即需要動態執行的程式碼段。  

    2>引數 filename:程式碼檔名稱,如果不是從檔案讀取程式碼則傳遞一些可辨認的值。當傳入了source引數時,filename引數傳入空字元即可。  

    3> 引數model:指定編譯程式碼的種類,可以指定為 ‘exec’,’eval’,’single’。當source中包含流程語句時,model應指定為‘exec’;當source中只包含一個簡單的求值表       達式,model應指定為‘eval’;當source中包含了互動式命令語句,model應指定為'single'。

  輸入輸出相關型別

  20#input()    輸入相關型別的函式,型別為str       input("請輸出使用者名稱:")

  21#print()    列印相關的輸出資料     print("hello, world")

·    def print(self, *args, sep=' ', end='\n', file=None): # known special case of print
    """
      print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)
      file: 預設是輸出到螢幕,如果設定為檔案控制代碼,輸出到檔案
      sep: 列印多個值之間的分隔符,預設為空格
      end: 每一次列印的結尾,預設為換行符
      flush: 立即把內容輸出到流檔案,不作快取
     """

    file() 和檔案有關的關鍵字

    f = open('tmp_file','w')
    print(123,456,sep=',',file = f,flush=True)
    列印進度條
      

      import time
      for i in range(0,101,2):
      time.sleep(0.1)
      char_num = i//2 #列印多少個'*'
      per_str = '\r%s%% : %s\n' % (i, '*' * char_num) if i == 100 else '\r%s%% : %s'%(i,'*'*char_num)
      print(per_str,end='', flush=True)
      #小越越 : \r 可以把游標移動到行首但不換行

   資料型別相關

  22#type(x)   返回變數x的資料型別

  記憶體相關

  23# io(x)   返回一個x的記憶體地址

  24#hash(x)     返回一個可hash變數的雜湊值,不可hash的變數雜湊後會報錯

  和檔案相關

  25#open(file)   共有六種操作檔案的方分別為:  r、w、a、r+、w+、a+  ,每一種都可以用二進位制檔案來操作:rb、wb、ab、rb+、wb+、ab+,也可以指定編碼格式

  模組操作相關

  26#import *    匯入模組

  27#help(x)      檢視和x相關的操作

  呼叫有關的操作

  28#callable(x)    x為引數,看這個變數是不是可呼叫的

    def func():

      pass

    print(callable(func))   >>   True

    print(callable(1234))   >>  False

  檢視引數所屬內建型別的所有方法

  29#dir()       

    print(dir(list))

    print(dir(dict)) 

四、資料結構相關函方法

  列表和元祖相關的:list和tuple

  字串相關的:str,format,bytes,bytearry,memoryview,ord,chr,ascii,repr

  序列相關的:reversed   slice

  資料集合:  dict,set,frozenset,len,sorted,enumerate,all,any,zip,filter,map

  高頻出現:filter、map、sorted