Python 我该怎么做才能让PyCharm找到PySide的来源?

Python 我该怎么做才能让PyCharm找到PySide的来源?,python,pyside,pycharm,Python,Pyside,Pycharm,我在用PySide和PyCharm。当我想在编辑器中跳转到PySide类方法的源代码时,它总是告诉我: Cannot find declaration to go to 我检查了dirpython27/Lib/site-packages/PySide,有许多.pyc和.pyd文件,但很少有*.py文件。我还从PySide站点下载了源程序包,但是那里有许多.cpp和.xml文件 我怎样才能找到PySide的.py源代码并让PyCharm找到它们?或者我得看文件,这不太方便。你可能误解了

我在用PySide和PyCharm。当我想在编辑器中跳转到PySide类方法的源代码时,它总是告诉我:

Cannot find declaration to go to     
我检查了dir
python27/Lib/site-packages/PySide
,有许多
.pyc
.pyd
文件,但很少有
*.py
文件。我还从PySide站点下载了源程序包,但是那里有许多
.cpp
.xml
文件


我怎样才能找到PySide的
.py
源代码并让PyCharm找到它们?或者我得看文件,这不太方便。

你可能误解了什么<代码> .Pyd文件(该文件扩展名是Windows专用的,但该原则也适用于<代码>。所以Linux上的文件和任何其他系统使用的文件扩展名是用C或C++编写的扩展到本机代码并放入动态链接库。

虽然你可以查看源代码,如果这个项目是开源的(在pythSE的情况下),它不是Python(你知道C?C++)吗?很多好的Python程序员都没有,并且用样板代码乱扔,除了让跨语言功能发生什么之外,什么也没有贡献。更糟糕的是,在PySead的情况下,C++源代码自动生成(从一个名为SeBiKEN的工具,它大概处理了你所看到的XML文件)。您还可以查看包装的Qt函数的源代码,但同样,这不太可能为您带来太多好处

因此,底线是:您必须坚持使用文档(或者阅读原始的Qt文档;我发现在不久前使用PyQt时,它非常简单,可以转换为Python)。除非它是绝对糟糕的(而原始Qt文档不是),否则它也会回答您的问题:

  • 更快,更少的努力。不需要通过数千行代码来大致了解该参数意味着什么
  • 更好。像最佳实践、弃用警告和陷阱这样的东西并不总是仅从代码中就能看到
  • 更正确。您能否正确理解代码,尤其是乍一看?我不敢打赌我能

  • 你可能误解了什么<代码> .Pyd文件(该文件扩展名是Windows专用的,但该原则也适用于<代码>。所以Linux上的文件和任何其他系统使用的文件扩展名是用C或C++编写的扩展到本机代码并放入动态链接库。

    虽然你可以查看源代码,如果这个项目是开源的(在pythSE的情况下),它不是Python(你知道C?C++)吗?很多好的Python程序员都没有,并且用样板代码乱扔,除了让跨语言功能发生什么之外,什么也没有贡献。更糟糕的是,在PySead的情况下,C++源代码自动生成(从一个名为SeBiKEN的工具,它大概处理了你所看到的XML文件)。您还可以查看包装的Qt函数的源代码,但同样,这不太可能为您带来太多好处

    因此,底线是:您必须坚持使用文档(或者阅读原始的Qt文档;我发现在不久前使用PyQt时,它非常简单,可以转换为Python)。除非它是绝对糟糕的(而原始Qt文档不是),否则它也会回答您的问题:

  • 更快,更少的努力。不需要通过数千行代码来大致了解该参数意味着什么
  • 更好。像最佳实践、弃用警告和陷阱这样的东西并不总是仅从代码中就能看到
  • 更正确。您能否正确理解代码,尤其是乍一看?我不敢打赌我能

  • 对于初学者来说,您是否检查过您想要查看其定义的东西是否在某个Python文件中?它应该在
    .pyd
    文件中。我们必须阅读这些文件的文档?对于初学者,您是否检查过您想要查看的定义在Python文件中的东西?它应该在
    .pyd
    文件中。我们必须阅读这些文件?我现在明白了。谢谢你友好耐心的回答!我现在明白了。谢谢你友好耐心的回答!