python學習日記:day15:------內置函數
阿新 • • 發佈:2018-01-04
八進制 一個 end bin cal sum 除法 open() 空間
1,作用域相關
1)locals()---------獲取執行本方法所在命名空間內的局部變量的字典
#返回本地作用域中的所有名字
2)globals()——獲取全局變量的字典
#返回全局作用域中的所有名字
2,字符串類型的代碼執行
eval() 將字符串類型的代碼執行並返回結果
print(eval(‘1+2+3+4‘)
exec()將自字符串類型的代碼執行
print(exec("1+2+3+4")) exec("print(‘hello,world‘)")compile編譯
#流程語句使用exec code1 = ‘for i in range(0,10): print (i)‘compile1 = compile(code1,‘‘,‘exec‘) exec (compile1)
#簡單求值表達式用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變量不存在
exec(compile3) #執行時顯示交互命令,提示輸入
3、叠代器/生成器相關(3)
#叠代器.__next__()
# next(叠代器)
# 叠代器 = iter(可叠代的)
# 叠代器 = 可叠代的.__iter__()
4,輸入輸出相關
input() 輸入
s = input("請輸入內容 : ") #輸入的內容賦值給s變量 print(s) #輸入什麽打印什麽。數據類型是str
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: 立即把內容輸出到流文件,不作緩存"""
5,數據類型相關:
type(a) 返回變量a的數據類型
6,內存相關:
id(o) o是參數,返回一個變量的內存地址
hash(o) o是參數,返回一個可hash變量的哈希值,不可hash的變量被hash之後會報錯。
#hash - 對於相同可hash數據的hash值在一次程序的執行過程中總是不變的
# - 字典的尋址方式
t = (1,2,3) l = [1,2,3] print(hash(t)) #可hash print(hash(l)) #會報錯 ‘‘‘ 結果: TypeError: unhashable type: ‘list‘ ‘‘‘ hash實例
7,文件操作相關
open() 打開一個文件,返回一個文件操作符(文件句柄)
操作文件的模式有r,w,a,r+,w+,a+ 共6種,每一種方式都可以用二進制的形式操作(rb,wb,ab,rb+,wb+,ab+)
可以用encoding指定編碼.
8,模塊操作相關
__import__導入一個模塊
9,幫助方法
help
在控制臺執行help()進入幫助模式。可以隨意輸入變量或者變量的類型。輸入q退出
或者直接執行help(o),o是參數,查看和變量o有關的操作。。。
#help與dir的區別:(自己總結的)dir() 查看方法名(不是很詳細的幫助) help 查看方法名和用法(更詳細的幫助) 10,和調用相關
callable(o),o是參數,看這個變量是不是可調用。
如果o是一個函數名,就會返回True
def func():pass print(callable(func)) #參數是函數名,可調用,返回True print(callable(123)) #參數是數字,不可調用,返回False
11,和數字相關
數字——數據類型相關:bool,int,float,complex
數字——進制轉換相關:bin,oct,hex
數字——數學運算:abs,divmod,min,max,sum,round,pow# print(bin(10))--二進制# print(oct(10))--八進制
# print(hex(10))--十六進制
#abs()求絕對值
#divmod() 除余 ->div 除法,mod 取余
#pow(2,3)->2**3求冪運算
#pow(2,3,4)-->2*3%4,最後一個數取余。冪運算之後取余
12,max
print(max([1,2,3,4])) print(max(1,2,3,4)) print(max(1,2,3,-4)) print(max(1,2,3,-4,key = abs))
13,min
print(min([1,2,3,4])) print(min(1,2,3,4)) print(min(1,2,3,-4)) print(min(1,2,3,-4,key = abs))
python學習日記:day15:------內置函數