天天看點

python内置函數你了解多少?

python内置函數你了解多少?

python内置函數

https://www.runoob.com/python/python-built-in-functions.html

abs():絕對值函數

描述:傳回函數的絕對值

使用:ads(x)

x 是數字,傳回的是x的絕對值

divmod():傳回除數餘數函數

描述:把除數和餘數結合起來,傳回一個包含商和餘數的元祖(a//b, a%b)

文法:divmod(a, b)

a,b都是數字,傳回的是(a//b, a%b)

python2.3版本之前不允許處理複數

input():接收輸入值函數

描述:用于接收輸入的資料

python不同版本input函數的差別

Python3.x 中 去掉了raw_input()函數。input() 函數接受一個标準輸入資料,傳回為 string 類型。

python2.x 中 raw_input() 将所有輸入作為字元串看待,傳回字元串類型。 input() 在輸入數字時,它傳回所輸入的數字的類型( int, float );輸入字元串時要求加"",傳回字元串類型。

文法:x = input([prompt])

prompt是提示資訊,可填可不填

open():打開檔案函數

描述:用于打開一個檔案,建立一個file對象

文法:open(name[, mode[, buffering]])

name:包含檔案名的字元串值

mode : mode 決定了打開檔案的模式:隻讀,寫入,追加等。所有可取值見如下的完全清單。這個參數是非強制的,預設檔案通路模式為隻讀®

r 隻讀;rb 二進制讀;r+/w+讀寫; rb+/wb+二進制讀寫;w 隻寫;wb 二進制寫

a 追加;ab 二進制追加;a+/ab+ 檔案存在則追加,檔案不存在則讀寫

buffering : 如果 buffering 的值被設為 0,就不會有寄存。如果 buffering 的值取 1,通路檔案時會寄存行。如果将 buffering 的值設為大于 1 的整數,表明了這就是的寄存區的緩沖大小。如果取負值,寄存區的緩沖大小則為系統預設。

檔案對象方法

  • file.read([size]):size 未指定則傳回整個檔案,如果檔案大小 >2 倍記憶體則有問題,f.read()讀到檔案尾時傳回""(空字串)。
  • file.readline():傳回一行。
  • file.readlines([size]) :傳回包含size行的清單, size 未指定則傳回全部行。
  • for line in f: print line :通過疊代器通路。
  • f.write(“hello\n”):如果要寫入字元串以外的資料,先将他轉換為字元串。
  • f.tell():傳回一個整數,表示目前檔案指針的位置(就是到檔案頭的比特數)。
  • f.seek(偏移量,[起始位置]):用來移動檔案指針。
  • 偏移量: 機關為比特,可正可負
  • 起始位置: 0 - 檔案頭, 預設值; 1 - 目前位置; 2 - 檔案尾
  • f.close() 關閉檔案

staticmethod() :傳回函數靜态方法

描述:傳回函數的靜态方法

文法:staticmethod(function)

參數是一個函數,可不填

all() :判斷參數是否都是True

描述:用于判斷給定的可疊代參數 iterable 中的所有元素是否都為 TRUE,如果是傳回 True,否則傳回 False。(元素除了是 0、空清單、空元祖、None、False 外都算 True。)

文法:all(iterable)

iterable – 元組或清單,傳回布爾值

enumerate(): 将可疊代對象組合成索引序列

描述:用于将一個可周遊的資料對象(如清單、元組或字元串)組合為一個索引序列,同時列出資料和資料下标,一般用在 for 循環當中。Python 2.3. 以上版本可用,2.6 添加 start 參數。

文法:enumerate(sequence, [start=0])

sequence – 一個序列、疊代器或其他支援疊代對象。

start – 下标起始位置。

傳回 enumerate(枚舉) 對象。

int() :将字元串或數字轉化為整型

描述:用于将一個字元串或數字轉化為整數類型

文法:int(x, base = 10)

x – 字元串或數字,

base – 進制數,預設十進制。

ord():傳回參數的ASCLL碼或Unicode 數值

描述:ord() 函數是 chr() 函數(對于8位的ASCII字元串)或 unichr() 函數(對于Unicode對象)的配對函數,它以一個字元(長度為1的字元串)作為參數,傳回對應的 ASCII 數值,或者 Unicode 數值,如果所給的 Unicode 字元超出了你的 Python 定義範圍,則會引發一個 TypeError 的異常。

文法:ord©

參數c是字元,傳回的是十進制整數

str() :轉化為字元串

描述:将對象轉化為友善閱讀的字元串格式

文法:str(objrct)

object是一個對象,傳回值是一個字元串

any():判定參數是否都是False

描述:any() 函數用于判斷給定的可疊代參數 iterable 是否全部為 False,則傳回 False,如果有一個為 True,則傳回 True。(元素除了是 0、空、FALSE 外都算 TRUE。)

文法:any(iterable)

iterable – 元組或清單。

和all()差別

all()函數是參數隻要有一個為false,就傳回false,否則傳回true

any()函數是參數隻要有一個為turn,就傳回true,否則傳回false

eval():傳回表達式的計算結果

描述:eval() 函數用來執行一個字元串表達式,并傳回表達式的值。

文法:eval(expression[, globals[, locals]])

expression – 表達式。

globals – 變量作用域,全局命名空間,如果被提供,則必須是一個字典對象。

locals – 變量作用域,局部命名空間,如果被提供,可以是任何映射對象。

isinstance():判斷變量是否是該類型

描述:isinstance() 函數來判斷一個對象是否是一個已知的類型,類似 type()。

文法:isinstance(object, classinfo)

object – 執行個體對象

classinfo – 可以是直接或間接類名、基本類型或者由它們組成的元組

傳回布爾值

isinstance()和type()函數的差別

type() 不會認為子類是一種父類類型,不考慮繼承關系

isinstance() 會認為子類是一種父類類型,考慮繼承關系

pow():幂計算

描述:方法傳回方法傳回x的y次方的值。

文法:

通過導入math子產品,

import math

math.pow(x,y)

内置的pow函數

pow(x, y[, z])

差別:pow() 通過内置的方法直接調用,内置方法會把參數作為整型,而 math 子產品則會把參數轉換為 float

sum():求和

描述:對可疊代對象進行求和,傳回計算結果

文法:sum(iterable[, start])

iterable – 可疊代對象,如:清單、元組、集合。

start – 指定相加的參數,如果沒有設定這個值,預設為0。

basestring():

描述:basestring() 方法是 str 和 unicode 的超類(父類),也是抽象類,是以不能被調用和執行個體化,但可以被用來判斷一個對象是否為 str 或者 unicode 的執行個體,isinstance(obj, basestring) 等價于 isinstance(obj, (str, unicode))。

文法:basestring() ,沒有參數和傳回值

execfile():執行檔案

描述:execfile() 函數可以用來執行一個檔案。(可用于執行一個python檔案,傳回該檔案的執行結果)

文法:execfile(filename[, globals[, locals]])

filename – 檔案名。

傳回表達式執行結果。

issubclass() :判斷參數 class 是否是類型參數 classinfo 的子類

描述:issubclass() 方法用于判斷參數 class 是否是類型參數 classinfo 的子類

文法:issubclass(class, classinfo)

class – 類。

classinfo – 類

如果 class 是 classinfo 的子類傳回 True,否則傳回 False

print():輸出函數

描述:print() 方法用于列印輸出,最常見的一個函數,print 在 Python3.x 是一個函數,但在 Python2.x 版本不是一個函數,隻是一個關鍵字。

文法:print(*objects, sep=’ ‘, end=’\n’, file=sys.stdout)

objects – 複數,表示可以一次輸出多個對象。輸出多個對象時,需要用 , 分隔。

sep – 用來間隔多個對象,預設值是一個空格。

end – 用來設定以什麼結尾。預設值是換行符 \n,我們可以換成其他字元串。

file – 要寫入的檔案對象。

super():調用父類的方法

描述:super() 函數是用于調用父類(超類)的一個方法。

super 是用來解決多重繼承問題的,直接用類名調用父類方法在使用單繼承的時候沒問題,但是如果使用多繼承,會涉及到查找順序(MRO)、重複調用(鑽石繼承)等種種問題。

MRO 就是類的方法解析順序表, 其實也就是繼承父類方法時的順序表。

文法:super(type[, object-or-type])

type – 類。

object-or-type – 類,一般是 self

Python3.x 和 Python2.x 的一個差別是: Python 3 可以使用直接使用 super().xxx 代替 super(Class, self).xxx

bin():傳回整數的二進制表示

描述:bin() 傳回一個整數 int 或者長整數 long int 的二進制表示

文法:bin(x)

x – int 或者 long int 數字

傳回二進制字元串

file():建立file對象

描述:file() 函數用于建立一個 file 對象,它有一個别名叫 open(),更形象一些,它們是内置函數。參數是以字元串的形式傳遞的。

文法:file(name[, mode[, buffering]])

name – 檔案名

mode – 打開模式

buffering – 0 表示不緩沖,如果為 1 表示進行行緩沖,大于 1 為緩沖區大小。

傳回檔案對象

iter():用來生成疊代器

描述:iter() 函數用來生成疊代器

文法:iter(object[, sentinel])

object – 支援疊代的集合對象。

sentinel – 如果傳遞了第二個參數,則參數 object 必須是一個可調用的對象(如,函數),此時,iter 建立了一個疊代器對象,每次調用這個疊代器對象的__next__()方法時,都會調用 object。

傳回疊代器對象

舉例

lst = [1, 2, 3]

for i in iter(lst):

print(i)

property():在新式類中傳回屬性值。

描述:property() 函數的作用是在新式類中傳回屬性值。

文法:property([fget[, fset[, fdel[, doc]]]])

fget – 擷取屬性值的函數

fset – 設定屬性值的函數

fdel – 删除屬性值函數

doc – 屬性描述資訊

傳回新式類屬性

tuple():轉化為元祖

描述: tuple() 函數将清單轉換為元組

文法:tuple(seq)

seq – 要轉換為元組的序列(針對字典,會傳回字典的key組成的tuple)

傳回元祖

bool():轉化為布爾型

描述:bool() 函數用于将給定參數轉換為布爾類型,如果沒有參數,傳回 False。

bool 是 int 的子類。

文法:bool([x])

x – 要進行轉換的參數

傳回 Ture 或 False

filter():過濾函數

描述:filter() 函數用于過濾序列,過濾掉不符合條件的元素,傳回由符合條件元素組成的新清單

該接收兩個參數,第一個為函數,第二個為序列,序列的每個元素作為參數傳遞給函數進行判,然後傳回 True 或 False,最後将傳回 True 的元素放到新清單中

文法:filter(function, iterable)

function – 判斷函數。

iterable – 可疊代對象

Pyhton2.7 傳回清單,Python3.x 傳回疊代器對象

len():傳回長度

描述:len() 方法傳回對象(字元、清單、元組等)長度或項目個數。

文法:len( s )

range():生成整數清單

描述: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)

即左包含右不包含

tpye():傳回對象類型

描述:type() 函數如果你隻有第一個參數則傳回對象的類型,三個參數傳回新的類型對象。

文法:type(object)

傳回對象的類型

文法:type(name, bases, dict)

name – 類的名稱。

bases – 基類的元組。

dict – 字典,類内定義的命名空間變量。

傳回新的類型對象

bytearray() :傳回一個新位元組數組

描述:bytearray() 方法傳回一個新位元組數組。這個數組裡的元素是可變的,并且每個元素的值範圍: 0 <= x < 256。

文法:bytearray([source[, encoding[, errors]]])

如果 source 為整數,則傳回一個長度為 source 的初始化數組;

如果 source 為字元串,則按照指定的 encoding 将字元串轉換為位元組序列;

如果 source 為可疊代類型,則元素必須為[0 ,255] 中的整數;

如果 source 為與 buffer 接口一緻的對象,則此對象也可以被用于初始化 bytearray。

如果沒有輸入任何參數,預設就是初始化數組為0個元素。

float():轉化為浮點數

描述:用于将整數和字元串轉換成浮點數

文法:float([x])

list():轉化為清單

描述:list() 方法用于将元組轉換為清單。

文法:list( tup )

raw_input() :擷取控制台的輸入

描述:raw_input() 用來擷取控制台的輸入

将所有輸入作為字元串看待,傳回字元串類型

Python3.x 中 去掉了raw_input()函數

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

文法:raw_input([prompt])

prompt: 可選,字元串,可作為一個提示語

unichr():傳回unicode字元

描述:unichr() 函數 和 chr()函數功能基本一樣, 隻不過是傳回 unicode 的字元

文法:unichr(i)

i – 可以是10進制也可以是16進制的形式的數字。

傳回 unicode 的字元

callable() :檢查對象是否可調用

描述:callable() 函數用于檢查一個對象是否是可調用的。如果傳回 True,object 仍然可能調用失敗;但如果傳回 False,調用對象 object 絕對不會成功。

對于函數、方法、lambda 函式、 類以及實作了 __call__方法的類執行個體, 它都傳回 True。

文法:callable(object)

object – 對象

format(): 格式化函數

描述:Python2.6 開始,新增了一種格式化字元串的函數 str.format(),它增強了字元串格式化的功能。

基本文法是通過 {} 和 : 來代替以前的 % 。

format 函數可以接受不限個參數,位置可以不按順序。

也可以設定參數,也可以傳入參數

locals() :傳回目前位置的全部局部變量

描述:locals() 函數會以字典類型傳回目前位置的全部局部變量

對于函數, 方法, lambda 函式, 類, 以及實作了 __call__方法的類執行個體, 它都傳回 True。

文法:locals()

沒有參數

傳回字典類型的局部變量

reduce() :對參數元素進行累積

描述:reduce() 函數會對參數序列中元素進行累積,函數将一個資料集合(連結清單,元組等)中的所有資料進行下列操作:用傳給 reduce 中的函數 function(有兩個參數)先對集合中的第 1、2 個元素進行操作,得到的結果再與第三個資料用 function 函數運算,最後得到一個結果

文法:reduce(function, iterable[, initializer])

function – 函數,有兩個參數

initializer – 可選,初始參數

傳回函數計算結果

chr():傳回參數對應的字元

描述:chr() 用一個範圍在 range(256)内的(就是0~255)整數作參數,傳回一個對應的字元

文法: chr(i)

i – 可以是10進制也可以是16進制的形式的數字

傳回值是目前整數對應的 ASCII 字元

frozenset() 傳回當機的集合

描述:frozenset() 傳回一個當機的集合,當機後集合不能再添加或删除任何元素

文法:frozenset([iterable])

iterable – 可疊代的對象,比如清單、字典、元組等等

傳回新的 frozenset 對象,如果不提供任何參數,預設會生成空集合

long() :轉換為長整型

描述:long() 函數将數字或字元串轉換為一個長整型

文法:long(x, base=10)

x – 字元串或數字

base – 可選,進制數,預設十進制

reload():重新載入之前載入的子產品

描述:reload() 用于重新載入之前載入的子產品

文法:reload(module)

module – 子產品對象

傳回子產品對象

vars() :對象的屬性和屬性值的字典對象

描述:vars() 函數傳回對象object的屬性和屬性值的字典對象

文法:vars([object])

傳回對象object的屬性和屬性值的字典對象,如果沒有參數,就列印目前調用位置的屬性和屬性值 類似 locals()

classmethod 修飾符

描述:classmethod 修飾符對應的函數不需要執行個體化,不需要 self 參數,但第一個參數需要是表示自身類的 cls 參數,可以來調用類的屬性,類的方法,執行個體化對象等

文法:@classmethod

傳回函數的類方法

getattr() :傳回對象屬性值

描述:getattr() 函數用于傳回一個對象屬性值

文法:getattr(object, name[, default])

object – 對象。

name – 字元串,對象屬性。

default – 預設傳回值,如果不提供該參數,在沒有對應屬性時,将觸發 AttributeError

傳回對象屬性值

map():對指定序列做映射

描述:map() 會根據提供的函數對指定序列做映射。第一個參數 function 以參數序列中的每一個元素調用 function 函數,傳回包含每次 function 函數傳回值的新清單。

文法:map(function, iterable, …)

function – 函數

iterable – 一個或多個序列

Python 2.x 傳回清單,Python 3.x 傳回疊代器

repe():轉化為字元串

描述:将對象轉化為供解釋器讀取的形式

文法:repr(object)

傳回一個對象的 string 格式

xrange():生成器

描述:xrange() 函數用法與 range 完全相同,所不同的是生成的不是一個數組,而是一個生成器。

即range()傳回的一次生成全部,xrange()是用一個生成一個,會比較省記憶體

文法:xrange(stop)  xrange(start, stop[, step])

start: 計數從 start 開始。預設是從 0 開始。例如 xrange(5) 等價于 xrange(0, 5)

stop: 計數到 stop 結束,但不包括 stop。例如:xrange(0, 5) 是 [0, 1, 2, 3, 4] 沒有 5

step:步長,預設為1。例如:xrange(0, 5) 等價于 xrange(0, 5, 1)

cmp():比較對象大小

描述:cmp(x,y) 函數用于比較2個對象,如果 x < y 傳回 -1, 如果 x == y 傳回 0, 如果 x > y 傳回 1

文法:cmp( x, y )

x,y都是數值表達式

傳回-1,0,1

globals():傳回目前位置的全部全局變量

描述:globals() 函數會以字典類型傳回目前位置的全部全局變量

文法:globals()

和locals()用法一緻

max() :傳回給定參數的最大值

描述:max() 方法傳回給定參數的最大值,參數可以為序列

文法:max( x, y, z, … )

x, y, z, …數值表達式

傳回一個最大值

reverse():反轉清單

描述:reverse() 函數用于反向清單中元素

文法:list.reverse()

該方法沒有傳回值,但是會對清單的元素進行反向排序

zip():壓縮(将元素對應壓縮成清單嵌套元祖)

描述:zip() 函數用于将可疊代的對象作為參數,将對象中對應的元素打包成一個個元組,然後傳回由這些元組組成的清單。

如果各個疊代器的元素個數不一緻,則傳回清單長度與最短的對象相同,利用 * 号操作符,可以将元組解壓為清單。

zip 方法在 Python 2 和 Python 3 中的不同:在 Python 3.x 中為了減少記憶體,zip() 傳回的是一個對象。如需展示清單,需手動 list() 轉換。

文法:zip([iterable, …])

iterabl – 一個或多個疊代器

傳回元組清單

與 zip 相反,*zipped 可了解為解壓,傳回二維矩陣式

zip(*zipped)

compile() :将字元串編譯為位元組代碼

描述:compile() 函數将一個字元串編譯為位元組代碼。

文法:compile(source, filename, mode[, flags[, dont_inherit]])

source – 字元串或者AST(Abstract Syntax Trees)對象。。

filename – 代碼檔案名稱,如果不是從檔案讀取代碼則傳遞一些可辨認的值。

mode – 指定編譯代碼的種類。可以指定為 exec, eval, single。

flags – 變量作用域,局部命名空間,如果被提供,可以是任何映射對象。。

flags和dont_inherit是用來控制編譯源碼時的标志

傳回表達式執行結果

hasattr() :判斷對象是否包含對應的屬性

描述:hasattr() 函數用于判斷對象是否包含對應的屬性

文法:hasattr(object, name)

name – 字元串,屬性名

如果對象有該屬性傳回 True,否則傳回 False

memoryview() :傳回給定參數的記憶體檢視對象(Momory view)

描述:memoryview() 函數傳回給定參數的記憶體檢視對象(Momory view)

所謂記憶體檢視對象,是指對支援緩沖區協定的資料進行包裝,在不需要複制對象基礎上允許Python代碼通路

文法:memoryview(obj)

obj – 對象

round() :浮點數的四舍五入值

描述:round() 方法傳回浮點數x的四舍五入值

文法:round( x [, n] )

x --數值

n – 保留小數點位數,預設0

傳回浮點數x的四舍五入值

####__import__():動态加載類和函數

描述:__import__() 函數用于動态加載類和函數 。如果一個子產品經常變化就可以使用 __import__() 來動态載入。

文法:__import__(name[, globals[, locals[, fromlist[, level]]]])

name – 子產品名

傳回元祖清單

complex():建立/轉化複數

描述:complex() 函數用于建立一個值為 real + imag * j 的複數或者轉化一個字元串或數為複數。如果第一個參數為字元串,則不需要指定第二個參數

文法:class complex([real[, imag]])

real – int, long, float或字元串

imag – int, long, float

hash():擷取哈希值

描述:hash() 用于擷取取一個對象(字元串或者數值等)的哈希值

文法:hash(object)

傳回哈希值

min() :傳回最小值

描述:min() 方法傳回給定參數的最小值,參數可以為序列

文法:min( x, y, z, … )

傳回給定參數的最小值

set() :建立一個無序不重複元素集(set:組)

描述:set() 函數建立一個無序不重複元素集,可進行關系測試,删除重複資料,還可以計算交集、差集、并集等。

文法:set([iterable])

delattr():删除屬性

描述:用于删除屬性。delattr(x,‘foobar’)相等于del x.foobar

文法:delattr(object, name)

name – 必須是對象的屬性

help() :檢視函數或子產品用途的詳細說明

描述:help() 函數用于檢視函數或子產品用途的詳細說明

文法:help([object])

傳回對象幫助資訊

next():用于疊代器的傳回數值

描述:傳回疊代器的下一個項目

文法:next(iterator[, default])

iterator – 可疊代對象

default – 可選,用于設定在沒有下一個元素時傳回該預設值,如果不設定,又沒有下一個元素則會觸發 StopIteration 異常

setattr() :設定屬性值

描述:setattr() 函數對應函數 getattr(),用于設定屬性值,該屬性不一定是存在的

文法:setattr(object, name, value)

name – 字元串,對象屬性

value – 屬性值

dict() :建立字典

描述:dict() 函數用于建立一個字典

class dict(**kwarg)

class dict(mapping, **kwarg)

class dict(iterable, **kwarg)

參數

**kwargs – 關鍵字

mapping – 元素的容器

hex() :将10進制整數轉換成16進制

描述:hex() 函數用于将10進制整數轉換成16進制,以字元串形式表示

文法:hex(x)

slice() :實作切片對象

描述:slice() 函數實作切片對象,主要用在切片操作函數裡的參數傳遞

class slice(stop)

class slice(start, stop[, step])

start – 起始位置

stop – 結束位置

step – 間距

傳回一個切片對象

dir():

描述:dir() 函數不帶參數時,傳回目前範圍内的變量、方法和定義的類型清單;帶參數時,傳回參數的屬性、方法清單。如果參數包含方法__dir__(),該方法将被調用。如果參數不包含__dir__(),該方法将最大限度地收集參數資訊

文法:dir([object])

object – 對象、變量、類型

傳回子產品的屬性清單

id():擷取對象記憶體位址

描述:id() 函數用于擷取對象的記憶體位址

文法:id([object])

傳回對象的記憶體位址

oct() :将整數轉換成8進制字元串

描述:oct() 函數将一個整數轉換成8進制字元串

文法:oct(x)

sorted() :排序

描述:sorted() 函數對所有可疊代的對象進行排序操作

文法:sorted(iterable[, cmp[, key[, reverse]]])

cmp – 比較的函數,這個具有兩個參數,參數的值都是從可疊代對象中取出,此函數必須遵守的規則為,大于則傳回1,小于則傳回-1,等于則傳回0

key – 主要是用來進行比較的元素,隻有一個參數,具體的函數的參數就是取自于可疊代對象中,指定可疊代對象中的一個元素來進行排序

reverse – 排序規則,reverse = True 降序 , reverse = False 升序(預設)

傳回重新排序的清單

sort 與 sorted 差別

sort 是應用在 list 上的方法,sorted 可以對所有可疊代的對象進行排序操作

list 的 sort 方法傳回的是對已經存在的清單進行操作,無傳回值,而内建函數 sorted 方法傳回的是一個新的 list,而不是在原來的基礎上進行的操作

exec 内置語句

描述:exec 執行儲存在字元串或檔案中的Python語句,相比于 eval,exec可以執行更複雜的 Python 代碼

需要說明的是在 Python2 中exec不是函數,而是一個内置語句(statement),但是Python 2中有一個 execfile() 函數。可以了解為 Python 3 把 exec 這個 statement 和 execfile() 函數的功能夠整合到一個新的 exec() 函數中去了

文法:exec obj

obj – 要執行的表達式

exec 傳回值永遠為 None

繼續閱讀