Python 当文件位于另一个文件夹/目录中时跳转到声明
我在PyCharm中使用键盘快捷键“跳转到声明”。我希望我的项目结构能够方便地支持在多个文件夹/目录中包含源代码文件。不幸的是,当试图跳转到存在于另一个目录中的函数调用时,“跳转到声明”似乎失败了。有没有办法解决这个问题或教它跳到哪里?尽管嵌套目录在同一个项目中,但它似乎没有索引/搜索到这些目录。所以我不得不将所有的源代码都保存在同一个目录中,这样我就可以在PyCharm中使用“跳转到声明”了 我正在通过此解决方案从其他文件夹导入文件: 但当我尝试通过file.function()的键盘快捷键“跳转到声明”时,它失败了,因为它不在当前文件的同一目录中 编辑: 所以我创建了@Code学徒建议的结构 然后我添加了@Lukasz建议的_uinit__uuuuuuuuy.py,它成功了: 现在回到我的另一个项目,init.py似乎不起作用。让我修补一下,看看有什么不同 Edit2: 有趣的是,如果将相同的文件bar.py添加到原始项目的子文件夹中,并包含_init__.py文件,则无法跳转到那里的声明。所以这个项目或者PyCharm对我的项目的解释肯定有问题。这是一个大项目,也许有什么东西把它扔了 Edit3:Python 当文件位于另一个文件夹/目录中时跳转到声明,python,pycharm,Python,Pycharm,我在PyCharm中使用键盘快捷键“跳转到声明”。我希望我的项目结构能够方便地支持在多个文件夹/目录中包含源代码文件。不幸的是,当试图跳转到存在于另一个目录中的函数调用时,“跳转到声明”似乎失败了。有没有办法解决这个问题或教它跳到哪里?尽管嵌套目录在同一个项目中,但它似乎没有索引/搜索到这些目录。所以我不得不将所有的源代码都保存在同一个目录中,这样我就可以在PyCharm中使用“跳转到声明”了 我正在通过此解决方案从其他文件夹导入文件: 但当我尝试通过file.function()的键盘快捷键
最后一个问题是我犯了一个愚蠢的错误。谢谢大家 让我们调用您的项目目录
project\u ROOT
。您可以在此文件夹中创建任意目录结构。例如,假设您在foo
文件夹中创建bar.py
,在PROJECT\u ROOT
中创建main.py
:
PROJECT_ROOT
|_ foo
|_ bar.py
|_ main.py
在main.py
中使用标准导入:
import foo.bar
foo.bar.do_something()
现在将光标移动到
main.py
中的do\u something()
用法,然后按Ctrl+B。这将跳转到foo/bar.py
中的定义。您可以添加一些代码和文件结构吗?您需要文件夹中的空
\uuuuu init\uuuuuuuupy.py
文件才能使其成为python包,因此导入将适用于模块您还可以导入:
from app.folder1 import name [as sub_name]
你能给出一个完整的代码示例吗?我经常使用Ctrl+B跳转到python源文件中的声明,无论声明相对于当前源文件位于哪个目录。欢迎使用!;]这对我的示例有效,让我看看是否可以将其成功应用于我的其他项目。设置此项目,请参阅上面的编辑。现在已经在示例项目中运行了。
from app.folder1 import name [as sub_name]