Python全局变量演示

时间:2017-11-02 07:13:37

标签: python-2.7

wcyear = 2000
def worldcup():
    global wcyear
    for i in wcyear:
        wcyear = wcyear+4
        print wcyear

print 'world cup year: ',wcyear
worldcup()
print 'Out of function wc year: ',wcyear

错误我得到的是:TypeError: 'int' object is not iterable 循环中不支持全局变量吗?

2 个答案:

答案 0 :(得分:1)

你的wcyear变量是一个整数,它不能被for循环迭代。取而代之的是你可以使用以下逻辑:

for i in range(0,wcyear):

如果你需要从0开始,你可以使用范围(1,wcyear)

答案 1 :(得分:0)

支持全局变量。要使用for循环,您需要迭代 over iterable 对象。

在你的情况下,wcyear 一个int 。 int不可迭代。

  

iterable:   能够一次返回其成员的对象。迭代的示例包括所有序列类型(例如list,str和tuple)和一些非序列类型(如dict和file)以及使用 iter ()或定义的任何类的对象getitem ()方法。 Iterables可用于for循环以及需要序列的许多其他地方(zip(),map(),...)。

如果您的全局变量是一个列表,例如wcyear = [2000]或元组wcyear = (2000,),那么它将起作用。