添加到函数内的全局集时出现语法错误(Python)

2024-04-27 04:09:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试编写一个函数,从一个文件中读取关键字(格式为每个关键字在文本文件中的新行上)

我希望函数将关键字放入名为“desiredItems”的全局集合()中。你知道吗

desiredItems = set() def populateDesired(): for line in open("desireditems.txt"): addableLine = line.rstrip("\n") global desiredItems.add(addableLine)

出于某种原因,我的开发环境(Pycharm)告诉我desiredItems.add命令无效语法。你知道吗

(对不起,如果我插入的代码段不正确等)

提前谢谢


Tags: 文件函数inaddfordef格式line
2条回答

您根本不需要使用global,只需删除它。你知道吗

如果需要修改全局变量的绑定,语法如下

def populateDesired():
    global desiredItems
    for line in open("desireditems.txt"):
        addableLine = line.rstrip("\n")
        desiredItems.add(addableLine)

因为您不是在修改绑定—只是在调用一个方法,所以这里根本不需要global

def populateDesired():
    for line in open("desireditems.txt"):
        addableLine = line.rstrip("\n")
        desiredItems.add(addableLine)

相关问题 更多 >