在下面的代码中,我希望名称的输出包含一个从csv文件的列中获取的名称数组。当函数运行时,数组保持为空。为什么?你知道吗
def cp_identifier():
global names
names = []
array_dec()
print(names)
def array_dec():
with open("card_list_currents.csv", "r") as file:
card_list_table = csv.DictReader(file, delimiter=',')
for row in card_list_table:
names.append(row["Card Name"])
电流输出:
[]
预期输出:
['Card Name', 'Card Name', ... , 'Card Name']
为什么不使用下面这样的东西,而不是使用
global variable
如果您真的需要使用
global
变量,那么下面是声明global names
的更好方法因为
names
对cp_identifier
是全局的,但对array_dec
不是全局的。在后者中,names
是一个局部变量,在调用之后被丢弃。你知道吗但是,尽可能避免使用globals。您可以从
array_dec
返回names
数组。你知道吗相关问题 更多 >
编程相关推荐