在Pycharm中,全局变量在声明为赋值的全局变量时不会在函数内自动完成

时间:2014-05-27 02:33:56

标签: python autocomplete pycharm

使用pycharm 3.1和python3,如果我输入简单的类似

v = ['z', 'e', 't', 'z']
def foo():
    v.sort()
    print(v)

自动完成v只需将v识别为列表并在自动完成结果中显示sort()

但是如果要在函数pycharm中设置变量,则不会将其识别为列表并且不会自动完成

v = ['z', 'e', 't']
def foo():
    global v
    v.append('o')
    v.sort()
    print(v)

在全局v之后的函数内部,pycharm不会自动完成变量v

在python本身有一个合理的原因我不知道吗?或者这可能是一个pycharm bug?

1 个答案:

答案 0 :(得分:0)

我使用ipython尝试了您的示例,自动完成工作正常,因此它必须是pycharm问题。

请注意,在python中不鼓励使用全局变量,除非你有充分的理由。