为什么这段代码 运行 正确? (python 全局关键字)
why this code run correctly? (python global keyword)
我是新手...正在研究 global
关键字。
此代码创建一个随机字符串。
我认为第 8 行、string.append(word[x])
在此代码上出错
因为string
是一个全局变量,所以必须要有global
关键字。 (全局字符串)
但是这段代码 运行 正确...
为什么可以运行正确...?
import random
word = 'a b c d e f g h i j k l m n o p q r s t u v w x y z'.split(" ")
string = []
n = int(input())
def get(leng) :
for i in range (0, leng) :
x = random.randint(0, len(word)-1)
string.append(word[x])
sen = ''.join(string)
return sen
print(get(n))
你的代码乍一看似乎没有任何问题,虽然不是很清楚你想要发生什么或错误,但在 get()
中,你的列表 string
没有' 需要被分配为一个全局变量,除非你想重新定义变量。如果出于某种原因,您决定在函数内声明 string
或与此相关的任何变量,则需要更改其范围。
我是新手...正在研究 global
关键字。
此代码创建一个随机字符串。
我认为第 8 行、string.append(word[x])
在此代码上出错
因为string
是一个全局变量,所以必须要有global
关键字。 (全局字符串)
但是这段代码 运行 正确... 为什么可以运行正确...?
import random
word = 'a b c d e f g h i j k l m n o p q r s t u v w x y z'.split(" ")
string = []
n = int(input())
def get(leng) :
for i in range (0, leng) :
x = random.randint(0, len(word)-1)
string.append(word[x])
sen = ''.join(string)
return sen
print(get(n))
你的代码乍一看似乎没有任何问题,虽然不是很清楚你想要发生什么或错误,但在 get()
中,你的列表 string
没有' 需要被分配为一个全局变量,除非你想重新定义变量。如果出于某种原因,您决定在函数内声明 string
或与此相关的任何变量,则需要更改其范围。