Python學習筆記

2021-08-15 07:32:21 字數 3065 閱讀 7241

\n 換行

\t 空格

#coding=utf-8   中文注釋

#  單行注釋

'''多行注釋'''

%s %d %c 格式化輸出    輸出字元時%s %c 都可以輸出

多輸出格式  print("%s爸爸我今年%d歲"%(num1,name1))

print("ssssss",end="");  print預設end=換行符,如果不需要自動換行需要重置end=空

print("***"*20)  可以把乙個字串一行連續輸出20次

3*4=12   3**4=81   3乘以4次3  3*3*3*3

a,b,c=100,200,300

if 條件:    一定要冒號

input的鍵盤輸入獲取的值型別為string型別,需要用的時候需要進行強制型別轉換。

python的格式對其要求嚴格,每一行前面不允許有多餘的空格

python中對切片的理解還是存在很多問題,對其結構不是很理解所以對其方法的使用也很多不理解

對字串的操作中   .find和.index是查詢乙個字串在另外乙個字串中出現的位置,find沒找到返回下標-1,

index沒找到報錯

.rfind和.rindex從右邊開始找,但是返回值相同

.count("***",start,end)  查詢乙個字串在母串中出現的次數   並且可以標記起始和末尾位置

.replace(str1,str2,count)  替換字串,把str1替換成str2,如果指定了count次數則替換次數不超過count

.split(str) 分割,找到str進行分割

.capitalize 把字串第乙個字元大寫

.title 把字串每個單詞首字母都大寫

.startwith('***')  查詢是否以某個字串開頭,返回true或false

.endwith('***')判斷是否以某個字串結尾

.lower  把字串中所有大寫轉換為小寫

.upper  把所有的小寫字母轉換成大寫

有函式設定左對齊右對齊和

.strip去除字串左右的空白字元,.lstrip刪除左邊空格,.rstrip刪除右邊的空格

if 變數 in 集合:

print(變數)

while i函式頂層入口:  if __name__ == "__main__":

變數前面加   global   宣告乙個全域性變數   

預設引數  即自定義函式時把引數提前賦值:def ***(a,b,c=500):

不定長引數: *args  **kwargs

*args接收除了一一對應剩餘不帶名字的引數值

**kwargs接收帶名字的引數值

*args的實質是乙個元祖

**kwargs的實質是乙個字典

def test(a,b,*args,**kwargs):

test(10,20,30,40,50,aa=100,nn=500)

a=10,b=20,*args:(30,40,50);**kwargs:

當列表/元組在當做實參傳遞的時候,如果前面有乙個*,表示對其進行解包

當字典當做乙個實參進行傳遞的時候,如果前面有兩個**,表示對其進行解包

a=[11,22,33]  b=

test(11,22,*a,*bb)等價於test(11,22,11,22,33,"aa"=100,"bb"=200)

引用:  變數賦值即變數對值的位址進行了引用

可變資料型別:列表  字典

不可變資料型別,數字,字元,元組

如果a變數指向不可變型別資料,再對a進行賦值時a的引用物件會發生改變,即id值發生改變

如果a變數指向可變型別資料,在對a進行賦值時實質是對值進行修改,位址不變,即a變數引用的位址不變

定義字典時如果key的值是不可變型別時  呼叫***[key]可得出相應values值  

如果key的值是可變型別,呼叫時得不出值程式崩潰

函式傳遞引用:函式傳遞的全都是引用,如果是不可變型別形參改變不影響實參,如果是可變型別實參會根據形參改變。

原因是可變的不可變型別的性質導致他們位址的變與不變。

*** 在函式中a=a+a  是把兩個a的值相加得出乙個新的值(新的儲存位址)讓a對其引用

***       而a+=a   是在自身a的空間上進行賦值,所以空間沒有重新分配,而是把原a的值覆蓋了

(python中函式引數是引用傳遞,不是值傳遞)。對於不可變型別,因變數不能修改,

所以運算不會影響到變數自身;而對於可變型別來說,函式體中的運算有可能會更改傳入的引數變數。

匿名函式lambda:   匿名函式的語法只包含一條語句

用處:    def test2(x,y,kkk):

return kkk(x,y)

print(test2(11,22,lambda x,y:x+y))

可直接把匿名函式讓形參引用並在函式內呼叫

或用某個變數接收

***=lambda x,y:語句

key=***(變數1,變數2)

檔案:f=open('c:\\users\\asus\\desktop\\jqiery.txt','a+')   close關閉檔案

f.read()  讀

f.write()寫

f.readline()  讀一行

f.readlines()  讀多行,放在陣列中,每行放乙個單元

檔案的複製

第一種f = open("","");

f_write = open("","")

content = f.read();

f_write.write(content)

第二種for linecontents in f.readlines():

f_write.write(linecontents)

第三種while true:

linecontents = f.readline()

if len(f.readline())>0:

f_write.write(linecontents)

else:

break

持續更新....................

python教學筆記 python學習筆記(一)

1.eval 函式 eval是單詞evaluate的縮寫,就是 求.的值的意思。eval 函式的作用是把str轉換成list,dict,tuple.li 1 1,2,3 print eval li 1 di 1 print eval di 1 tu 1 2,4,6 print eval tu 1 執...

python學習筆記

coding utf 8 coding utf 8 應該像八股文一樣在每個指令碼的頭部宣告,這是個忠告 為了解決中文相容問題,同時你應該選擇支援 unicode 編碼的編輯器環境,保證在執行指令碼中的每個漢字都是使用 utf 8 編碼過的。cdays 5 exercise 3.py 求0 100之間...

Python 學習筆記

python 學習筆記 def run print running.def execute method method execute run result running.condition false test yes,is true if condition else no,is false ...