個人Python常出現的bug & 一些技巧

Python 之前是作爲應用語言學得,所以一些基礎知識不是很熟,所以記錄一下之前不知道的技巧

Bug

  • 外部的定義變量不能直接在函數中定義,要不就寫global,要不就定義局部變量傳參數
  • 不需要手寫棧或者隊列,python中有庫,queue.LifoQueue爲棧,queue.Queue爲隊列,也有優先隊列等等,都在queue庫裏
  • 定義函數參數有默認值時,調用不寫參數
  • 增加函數返回值的時候,調用不賦值
  • 類定義的類變量時所有實例共享的變量
  • 函數傳參寫串
data = csv.reader(open('data.csv','r')) #correct
data = csv.reader(open('data.csv'),'r') #wrong
  • 遍歷整數範圍不加range
num = 10
for i in num: # wrong
for i in range(num): # correct

技巧

  • 格式化輸出
print("%.2f" % float_num)
  • 變量內存地址
a = 55
b = 55
print(a is b) # is 爲身份運算符
print(id(a), id(b))  
  • 打印分隔符
print("-"*10) # 打印10個-
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章