深入理解Python3 內建函數大全,深入理解python3

來源:互聯網
上載者:User

深入理解Python3 內建函數大全,深入理解python3

本文主要介紹了Python3 內建函數,分享給大家,具體如下:

內建函數

以下代碼以Python3.6.1為例

#coding=utf-8# builtin_function.py 內建函數import osdef fun():  all([True, False]) # 迭代器(為空白or)所有元素為true,返回true => False  any([True, False]) # 迭代器任意一個元素為true,返回true => True  num = abs(-1.23) # 絕對值  num = pow(5, 3) # 冪次方 x**y =>125  num = pow(5, 3, 3) # 冪次方再取餘 (x**y) % z => 2  num = round(1.23) # 返回浮點數近似值,預設保留0位,且四捨五入  num = round(1.23, 5) # 5為保留小數點後位元  num = sum([1, 2, 3, 4, 5]) # 對列表數字求和  strs = ascii(os) # 返回對象的ascii字串形式  strs = bin(123) # 整數轉為二進位字串(若被轉對象非int類型可在__index__裡定義)  boolean = bool(0) # 擷取真假(假:None / False / 任何類型的0 / 空""()[]{} / __bool__返回False / __len__返回0)  bytes = bytearray("You were, are and will be in my heart!", "utf-8") # 字串(字串,編碼):按編碼轉為位元組序列 / 數字(數字):產生相應大小的空數組 / 無參():0數組  bytes = bytes("You were, are and will be in my heart!", "utf-8") # 同bytearray(),但是不可變  strs = chr(123) # 整數(Unicode)轉為char類型(範圍[0, 1 114 111])  num = ord("{") # char類型轉為整數(Unicode)  num = complex("1+2j") # 將字串或數字轉為複數(不能含有空格)  num = float('1.1') # 構建浮點數  strs = format(123,'f') # 格式化(類型:x,b,f... / 位移:>(>10),<,^ / 長度:5 / E)  strs = hex(123) # 將整數轉為16進位字串  strs = oct(123) # 十進位轉成8進位字串  num = int(123.1) # 轉為整數  strs = str(123) # 將對象轉為字串  strs = str(b"123", "utf-8")  elem = max([1,2,3,4], [2,4,6]) # 可接收1個iterable,或多個元素 => [2, 4, 6]  elem = max(1,2,3,4) # => 4  elem = max([1,2,3,4, 6], key = lambda x : x == 2) # => 2  elem = min(1,2,3,4) # 與max相反  exe = compile("print('O_O')", filename = 'strs', mode='exec') # 編譯為代碼, mode(編譯模式:可執行語句'exec',單個語句'eval',互動式語句'single')  exec(exe) # 執行已編譯代碼  exec("print('O_O')") # 執行String未編譯代碼  eval(compile("print('O_O')", filename = 'strs', mode='eval')) # 不接受字串類型  delattr(Clazz("Hello!"), "name") # 刪除某對象屬性 = del clazz.name 詳情見 類 文章的 反射 代碼塊(http://www.bkjia.com/article/128897.htm)  setattr(Clazz("Hello!"), "name", "World!") # 給對象某屬性賦值  strs = getattr(Clazz("Hello!"), "name") # 擷取某個對象的屬性值  strs = getattr(Clazz("Hello!"), "name", -1) # -1為未找到屬性的返回  boolean = hasattr(Clazz("Hello!"), "name") # 該對象是否有該屬性  lists = dir(Clazz("Hello!")) # 查看函數  clazz = type(os) # 擷取類型  dicts = globals() # 擷取當前全域函數與對象  dicts = locals() # 擷取當前局部函數與對象  dicts = vars() # 同locals() (__dict__)  dicts = vars(Clazz("Hello!"))  num = hash(Clazz("Hello!")) # 擷取某對象的hash值   help(os) # 擷取某對象的協助文檔  num = id(os) # 擷取某對象的id  boolean = isinstance(Clazz("Hello!"), Clazz) # 對象是否是該類的執行個體  boolean = issubclass(Clazz, Clazz) # 該類(前)是否是該類(後)的子類(包括自己)  strs = repr(os) # 將對象轉為字串表達形式  # - super() # 代理父類對象,詳情見 類 文章(http://www.bkjia.com/article/88315.htm)  # - memoryview(obj) # 記憶體視圖,詳解 資料結構 文章(http://www.bkjia.com/article/128892.htm)  dics = dict() # 建立字典  tups = divmod(10, 5) # 返回元組,(商(10/5),餘數(10%5))  lists = enumerate(['a', 'b', 'c']) # 返回枚舉對象  lists = filter(lambda x: True if (ord(x) > 66) else False, ['a', 'b', 'c']) # function為Frue保留,False移除  sets = frozenset([1, 2, 3]) # 返回新的frozenset對象(集合)  num = len([1, 2, 3]) # 長度  lists = list((1, 'a')) # 轉為list類型  tups = tuple([1, 2, 3]) # 轉為tuple元群組類型  ran = range(5) # 不可變序列  ran = range(0,5)  ran = range(0,5,2) # (起始,結束,增加量)  sets = set([1,2,3]) # 返回set集合  maps = map(lambda x, y: x*y, [1, 2, 3], [65, 66, 67, 68]) # 返回一個迭代器,元素通過自訂函數篩選,可接收多個iterable參數 => [65, 132, 201]  iters = zip(["A", "B", "C", "D", "E", "F"], [1, 2, 3]) # 建立新的迭代器, 彙總每個迭代器元素 => [('A', 1), ('B', 2), ('C', 3)]  iters = iter([1, 2, 3, 4, 5]) # 返回一個迭代器對象  elem = next(iters) # 從迭代器中擷取下個元素; 實現原理見 內建函數 文章 lis 塊代碼(http://www.bkjia.com/article/128890.htm)  iters = reversed([1,2,3]) # 返回反向的遍曆器 => [3, 2, 1]  lists = [1,2,3,4,5][slice(3)] # 切片 => [1, 2, 3]  lists = [1,2,3,4,5][slice(1,3)] # [slice(3) == slice(None, 3, None) / slice(1,3) == slice(1, 3, None) / slice(1,3,1) == slice(1, 3, 1)  lists = sorted([2,5,3,1,4]) # 排序 => [1, 2, 3, 4, 5]  lists = sorted(['a','B',';','t','D','1'], key = lambda x : ord(x), reverse = True) # key:比較鍵的函數, reverse是否反向遍曆  strs = input("請輸入資料:") # 輸入資料  f = open("temp.txt", "r+") # 開啟檔案,詳情見os文章  print("字串%d"%123) # 列印字元 => 字串123  print("字","符", "串", sep="-") # sep為分隔 => 字-符-串  print("字","符", "串", sep="-", end="\r\n") # end為尾部 => 字-符-串/r/n  print("字","符", "串", sep="-", end="\r\n", file=open("temp.txt","w+")) # 列印到檔案class Clazz:  def __init__(self, name):    self.name = name;  @classmethod # 將函數封裝成類方法  def setName_cls(cls, name):    pass  @staticmethod # 將函數封裝成靜態方法  def setName_sta(name):    pass  def getname(self):    return self.name  def setname(self, value):    self.name = value  def delname(self):    del self.name  # property(fget=None, fset=None, fdel=None, doc=None) # 返回一個property 屬性  # property 為屬性方法, 有兩種實現方式,詳情見 類 文章的 屬性方法代碼塊(http://www.bkjia.com/article/68235.htm)   x = property(getname, setname, delname) if __name__ == "__main__":  fun()  # property 的使用  c = Clazz("柳岩")  print(c.x) # => 柳岩  c.x = '湯唯'  print(c.getname()) # => 湯唯  del c.x

以上就是本文的全部內容,希望對大家的學習有所協助,也希望大家多多支援幫客之家。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.