V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
daiv
V2EX  ›  问与答

pycharm 下为什么无法自动提示对象的变量和方法?

  •  1
     
  •   daiv · 2015-09-09 17:23:06 +08:00 · 8735 次点击
    这是一个创建于 3381 天前的主题,其中的信息可能已经有所发展或是发生改变。

    2 个文件在一个目录,文件内容如下:
    想要的功能很简单,子函数想要自动提示 对象的方法和变量。(具体问题在 sub.py 的注释中)
    (同样的环境,同样是 win7+pycharm+python2.7 ,同学的电脑可以。)
    请大家帮我解答。谢谢!

    main.py

    import sub
    
    
    class Person:
        def __init__(self, name ):
            self.name = name
    
        def say_Hi (self ):
            print self.name, ' say hello world!'
    
    
    def main ():
        aa = Person ('aa')
        print aa.name  # 这里输入 aa. 的时候 会自动提示 所有变量和方法。
        sub.show_content (aa )
    
    
    if __name__ == '__main__':
        main ()
    

    sub.py

    def show_content (aa ):
        print aa.name  # 想要的效果是 输入 aa. 的时候自动提示 所有变量和方法。但是不会,为什么?
        aa.say_Hi ()
    
    7 条回复    2016-02-11 13:59:21 +08:00
    ainopara
        1
    ainopara  
       2015-09-09 18:00:56 +08:00 via iPad   ❤️ 1
    因为 pycharm 不知道你这个函数的名为 aa 的参数是什么。
    daiv
        2
    daiv  
    OP
       2015-09-09 18:48:51 +08:00
    @ainopara 为什么同样代码,放到我同学那,是可以提示的。 ( pycharm 是会这样自动提示的,因为会扫描整个工程,发现 main 引用了,而且是送了一个 对象过来)
    Ouyangan
        3
    Ouyangan  
       2015-09-09 23:51:25 +08:00   ❤️ 1
    动了设置么?
    daiv
        4
    daiv  
    OP
       2015-09-10 00:02:34 +08:00
    @Ouyangan 没动呀。我还重装了 python 2.7.10 64bit / pycharm 4.54 (Professional Edition )
    cxbig
        5
    cxbig  
       2015-09-10 05:13:20 +08:00   ❤️ 1
    先去设置看看你的自动提示开启了没有
    daiv
        6
    daiv  
    OP
       2015-09-10 11:12:43 +08:00
    @cxbig 默认开了的吧。 main.py 里面都可以自动提示呀。
    toseekin
        7
    toseekin  
       2016-02-11 13:59:21 +08:00
    关掉 File>Power Save Mode 试试?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4562 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 03:53 · PVG 11:53 · LAX 19:53 · JFK 22:53
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.