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