【查漏補(bǔ)缺】Python小知識點21~40

21.切片使用時注意點:指定的索引區(qū)間,包括起始索引對應(yīng)的元素,不包括結(jié)束索引對應(yīng)的元素。即:左開右閉。

如果,要跳躍選取區(qū)間中的元素,則再指定步長即可。

22.切片:如果要從起始索引處開始,直接取到最后,則結(jié)束索引不指定,就默認(rèn)到結(jié)束。

23.切片:正序索引默認(rèn)從0開始;逆序時,最后一個元素的索引為-1

24.切片:把步長設(shè)置為負(fù)數(shù),則表示逆序切。例如:my_str="abcde",則my_str[::-1]得到:"edcba"

25.max()和min()函數(shù)對list、字符串作用時,拿到的是最大和最小元素。對字典作用時,拿到的是最大和最小的key

26.列表、元組同樣支持乘法*和加法+運(yùn)算,會對列表或者元組進(jìn)行合并處理。

[1,2,3] *2--->[1,2,3,1, 2, 3]

[1,2,3] +[4, 5] --->[1,2,3,4,5]

27.列表的list1.append(list2)會把list2當(dāng)做一個元素放在list1的末尾。列表的list1.extend(list2)會把list2中的每一個元素拿出依次放在list1的末尾。

28.in、not in在判斷字符串、list、元組等,會對元素值進(jìn)行比對;而對字典,只是對key進(jìn)行比對。

29.for循環(huán)完整形式:

for...in...:

else :

...

這里的else代碼,只有在上面的循環(huán)完全循環(huán)后才會執(zhí)行;一旦上面的循環(huán),因遇到break中止,則else代碼是不會被執(zhí)行的。

30.print()函數(shù)打印輸出后,默認(rèn)換行。如果不想換行,則print("xxxx", end="...")

31.shebang:即在xxx.py文件的第一行加上#! Python解釋器的完整路徑

這樣xxx.py就可以直接運(yùn)行,不再需要python3 xxxx.py

32.獲取完整路徑:witch xxxx

例如:witch python3

33.修改某個文件的權(quán)限:chmod +x aaa.py

給aaa.py文件添加可執(zhí)行權(quán)限

34.Python中,數(shù)據(jù)和變量是分開存儲的。函數(shù)的傳參和返回值,本質(zhì)上都是傳的數(shù)據(jù)的引用,而不是數(shù)據(jù)本身。

35.數(shù)字類型、字符串及元組是不可變類型;列表和字典是可變類型。這里的可變及不可變的是在數(shù)據(jù)所在內(nèi)存中的地址。

可變:在內(nèi)存中的地址不變的情況下,可以改變數(shù)據(jù)的值;

不可變:要改變數(shù)據(jù)的值,只能通過改變指向內(nèi)存中的地址。

36.字典的鍵值對的key只能是數(shù)字類型、字符串及元組等不可變類型,如果把key設(shè)置為可變類型的,則會報錯!unhashale type!

這是因為Python中,會對字典的key進(jìn)行hash處理,以便后續(xù)對字典增刪改查的方便。而Python中的hash(o)算法,這里的入?yún)只能是不可變的,若是可變的會拋出異常。

37.Python中不可hash(o)處理的類型有:list,dict

38..字典的鍵值對的值可以是任意類型。

39.用global修飾的局部變量不再重新分配地址,而是指向同名的全局變量了。

40.開發(fā)時,如果定義了全局變量,應(yīng)該把全局變量定義在所有函數(shù)的上方,以保證所有函數(shù)都可以訪問到定義的全局變量。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容