內置函數,內置函數就是python自己定義好的,咱們直接拿來就能夠用的函數。(python中一共有68中內置函數。)html
|
下面咱們由做用不一樣分別進行詳述:(字體加粗的爲重點要掌握的)python
與做用域相關:global和localshell
str類型代碼的執行:eval、exec、compile緩存
>>> #流程語句使用exec
>>> code1 = 'for i in range(0,10): print (i)'
>>> compile1 = compile(code1,'','exec') >>> exec (compile1) 1
3
5
7
9
>>> #簡單求值表達式用eval
>>> code2 = '1 + 2 + 3 + 4'
>>> compile2 = compile(code2,'','eval') >>> eval(compile2) >>> #交互語句用single
>>> code3 = 'name = input("please input your name:")'
>>> compile3 = compile(code3,'','single') >>> name #執行前name變量不存在
Traceback (most recent call last): File "<pyshell#29>", line 1, in <module> name NameError: name 'name' is not defined >>> exec(compile3) #執行時顯示交互命令,提示輸入
please input your name:'pythoner'
>>> name #執行後name變量有值
"'pythoner'"
與數字相關的:數據結構
print(divmod(7,3))#(2,1)
print(round(3.14159,2))#3.14
f = 4.197937590783291932703479 #-->二進制轉換的問題
print(f)#4.197937590783292
與數據結構有關:ide
chr(97)
返回字符串'a'
,同時 chr(8364)
返回字符串'€'
),ascii,reprl2 = [1,3,5,-2,-4,-6] print(sorted(l2,key=abs,reverse=True))#[-6, 5, -4, 3, -2, 1]
print(sorted(l2))#[-6, -4, -2, 1, 3, 5]
print(l2)#[1, 3, 5, -2, -4, -6]
l = ['a','b'] for i,j in enumerate(l,1): print(i,j) #1 a
2 b L = [1,2,3,4] def pow2(x): return x*x l=map(pow2,L) print(list(l)) # 結果:
[1, 4, 9, 16] def is_odd(x): return x % 2 == 1 l=filter(is_odd, [1, 4, 6, 7, 9, 12, 17]) print(list(l)) # 結果:
[1, 7, 9, 17]
其餘:函數
輸入輸出:input(),print()源碼分析
#print的源碼分析:
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: 當即把內容輸出到流文件,不做緩存 """
#有關進度條打印的小知識
import time import sys for i in range(0,101,2): time.sleep(0.1) char_num = i//2 #打印多少個#
per_str = '%s%% : %s\n' % (i, '*' * char_num) if i == 100 else '\r%s%% : %s'%(i,'*'*char_num) print(per_str,end='', file=sys.stdout, flush=True) 複製代碼
def func():pass
print(callable(func)) #參數是函數名,可調用,返回True
print(callable(123)) #參數是數字,不可調用,返回False
附:可供參考的有關全部內置函數的文檔https://docs.python.org/3/library/functions.html#object字體