【发布时间】:2020-07-11 10:53:22
【问题描述】:
继续寻求真正理解 Python 3.7 中的模块和包,这是一个我无法理解的简化场景:
./modtest/test1.py
from test2 import C, y
def x(i):
print(i)
a = C()
y(i)
x(1000)
./modtest/test2.py:
def y(i):
print(i)
class C(object):
def __init__(self):
print("C")
pass
./testmodtest.py(普通包外)
import modtest.test1
test1(1)
从 pwd = ./ 运行 testmodtest 时出现错误,没有从 test1.py 生成名为“test2”的模块。
当 pwd = ./modtest 时我可以运行 test2
- 我做错了什么?
- 是否可以编写一个模块(例如 testmodtest.py),使其可以在模块内部和外部运行?
【问题讨论】:
标签: python-3.7