【发布时间】:2017-03-16 04:08:14
【问题描述】:
此导入工作正常,但在某些方面感觉很脏。主要是它使用 slice* 中的特定数字来获取父路径,并且它会惹恼 flake8 linter。
import os
import sys
sys.path.append(os.path.dirname(__file__)[:-5])
from codeHelpers import completion_message
它在一个看起来有点像这样的文件系统中:
parent_folder
__init__.py
codeHelpers.py
child_folder
this_file.py
(child_folder 实际上称为week1,因此切片中的 5)
这个问题与Python import from parent directory 非常相似,但在这种情况下,讨论的重点是从终点运行测试是否好。 In my case,我有一系列目录,其中包含使用位于父级中的帮助器的代码。
上下文:每个目录都是一组每周练习,所以我想让它们尽可能简单。
是否有一种更简洁、更 Python 的方式来执行此导入?
@cco 解决了数字问题,但它仍然让 linter 感到不安。
【问题讨论】:
-
您有很多答案可以解决您的问题,如果您可以将其中一个标记为已回答,我相信他们会很感激的。
标签: python python-import flake8