大家有没有被 PyCharm 的“想对引用”坑过

2014-12-16 22:08:03 +08:00
 Feiox
只要一使用,就报错 ValueError: Attempted relative import in non-package

即使使用

```
import os
os.path.abspath(os.path.join(os.path.dirname(__file__), '..'))
```

也无解。求指导 ~
9240 次点击
所在节点    Python
4 条回复
polythene
2014-12-16 22:27:45 +08:00
1、是“相对引用”。
2、relative import跟PyCharm没有关系,这是python的语法规定,在非包环境中就不能用相对引用,只能用绝对引用。
staticor
2014-12-16 23:03:58 +08:00
可参考 python cookbook, 应该是chapter 10 Modules and Packages 讲了一些包管理 相对引用的东西.
如上, 题主的问问题的问法有失偏颇.
Feiox
2014-12-18 13:39:10 +08:00
@polythene
@staticor
因为我用相对引用时, 使用命令行可以运行,使用 pycharm 就会报错。百思不得解 ~
laike9m
2014-12-19 20:31:55 +08:00
@Feiox 这个是你的执行路径不同,pycharm 里可以设定 working directory

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/154454

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX