1. 苏葳的备忘录首页
  2. 编程

Python的动态性引发的特殊问题

python 变量总体而言,C/C++/Java/C#之类传统语言,在风格上较为一致,使用起来没有太大问题(当然也跟计算机教学中更喜欢用这类语言描述数据结构,学习者更熟悉这些语言有关系)。而Python和perl之类语言就比较有个性,如果有以前的语言习惯的话,初学者使用起来需小心一些。对于传统C类语言来说,变量的作用域非常清晰,然而在Python中却有很大不同。比如有一个模块变量:

Y=10
def nn(x,y)
    Y=x+y
    return Y
z=nn(3,4)
print Y

于是,结果是10。可见,在函数作用域中的Y=x+y,由于python变量创建的动态性,将会创建一个值为x+y,名为Y的函数内变量。而不会自动引用模块变量Y的值。

原创文章,作者:苏葳,如需转载,请注明出处:https://www.swmemo.com/435.html

发表评论

邮箱地址不会被公开。 必填项已用*标注