Python中的全局变量与global

刚学习Python,遇到个问题:为什么有些定义在函数外的变量可以直接被函数使用,有些就不行呢?

如:

  count = 0

  def change():

    count += 1

  change() # 报错

  L = []

  def changeL():

    L.append('a')

  changeL() # 成功追加

总结:不可变类型的全局变量在函数中无法被重新绑定,除非声明global

如有不对,麻烦各位大神提醒指正

猜你喜欢

转载自www.cnblogs.com/Rombo713/p/10021062.html