重學python - 小知識

1、print函數:

print (value , ... , sep=”, end= ’\n’, file=sys.stdout , flush=False) 

print函數輸出之後總會換行,這是因爲 print函數的 end 參數的默認值是“\n”,改變end參數即可不換行。

2、長字符串(''' ''')

在長字符串中可以放置任何內容,包括放置單引號、雙引號都可以,如果所定義的長字符串沒有賦值給任何變量,那麼這個字符串就相當於被解釋器忽略了,也就相當於註釋掉了。

3、換行

可以使用轉義字符(\)對換行符進行轉義:

num = 20 + 3 + 4 + \ 
            2 * 3 

()[]{}內換行不需要轉義字符

4、將 bytes 對象解碼成字符串,使用decode,默認使用UTF-8進行解碼

bytes('我是',encoding='utf-8').decode('utf-8')
5、*號賦值

Python 允許在左邊被賦值變量之前添加“*”,那麼該變量就代表一個列表,可以保存多個集合元素。

first, *mid, last =range(10)

print(mid)   #[1, 2, 3, 4, 5, 6, 7, 8]

6、循環使用 else

for循環中使用,最後輸出結果等於循環體內最後結果

counti = 0
while counti < 5 :
    print('counti 小於5 :', counti)
    counti += 1
else:
    print ('counti 大於或等於 5: ',counti)
out:
counti 小於5 : 0
counti 小於5 : 1
counti 小於5 : 2
counti 小於5 : 3
counti 小於5 : 4
counti 大於或等於 5:  5

for counti in range(6):
    print('counti 小於 :', counti)
else: 
    print ('counti 大於或等於 5: ',counti)
out:
counti 小於 : 0
counti 小於 : 1
counti 小於 : 2
counti 小於 : 3
counti 小於 : 4
counti 小於 : 5
counti 大於或等於 5:  5

7、for循環簡寫

這兩種方式都可以:

[x*x if x%2==0 else x for x in range(10)]

[x*x for x in range(10) if x%2==0]

但是這樣寫不可以:[x*x if x%2==0 for x in range(10)]

 

8、函數參數收集

*收集多個參數值,**收集多個關鍵詞參數值

def test(x,y,z=3,*a,**b):
    print('x,y,z分別爲%s %s %s'%(x,y,z))
    print('a = ',a)
    print('b = ',b)
test(1,2,3,4,5,6,m=1,n=2)
out:
x,y,z分別爲1 2 3
a =  (4, 5, 6)
b =  {'m': 1, 'n': 2}

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章