Python:如何导入命名空间的一部分
我有一个结构,像这样是可以正常工作的:
import a.b.c
a.b.c.foo()
这个也可以正常工作:
from a.b import c
c.foo()
但是这个不行:
from a import b.c
b.c.foo()
这个也不行:
from a import b
b.c.foo()
我该怎么导入,才能让 b.c.foo()
这个能正常工作呢?
4 个回答
2
在你的'b
'包里,你需要加上'import c
',这样'c
'就可以一直在'b
'里面用到了。
2
在编程中,有时候我们需要让程序在某个条件满足时才执行特定的操作。比如说,如果你想让程序在用户输入正确的密码后才允许他们进入系统,这就是一个条件判断的例子。
条件判断就像是在问一个问题:“如果这个条件成立,我就做这件事。”如果条件不成立,程序就会跳过这件事,继续执行后面的代码。
在很多编程语言中,我们使用“if”这个词来表示条件判断。比如:
from a import b from a.b import c b.c = c
在这个例子中,程序会先检查条件是否成立,如果成立,就会执行大括号里的代码。如果不成立,程序就会跳过这些代码,继续执行后面的部分。
通过这种方式,我们可以让程序根据不同的情况做出不同的反应,这样就能让程序更加灵活和智能。
9
只需要重命名它:
from a.b import c as BAR
BAR.foo()