Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/301.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python支持导入包吗_Python - Fatal编程技术网

python支持导入包吗

python支持导入包吗,python,Python,我使用的是Python2.7,代码结构如下 model __init__.py order.py cart.py 也就是说,我定义了一个名为model的包,在这个包中,我定义了一个模块order,并在order.py中定义了一个类 class MyOrder(object): def __init__(self, name): self.name = name def getname(self): return self.nam

我使用的是Python2.7,代码结构如下

model
    __init__.py
    order.py
cart.py
也就是说,我定义了一个名为
model
的包,在这个包中,我定义了一个模块
order
,并在order.py中定义了一个类

class MyOrder(object):
    def __init__(self, name):
        self.name = name

    def getname(self):
        return self.name
在cart.py中,代码为:

import model

x = model.order.MyOrder("Book")
print x.getname()
当我运行它时,它抱怨
AttributeError:“module”对象没有属性“order”

但以下是正确的:

import model.order

x = model.order.MyOrder("Book")
print x.getname()

看起来我无法导入软件包(如
导入模型
)?

如果您想让
模型
自动导入
订单
,那么它是可用的,您应该在
\uu init\uuuuuuuuy.py
中完成。只需将以下内容放入
model/\uuu init\uuu.py

from . import order

之后,您应该能够访问
model.order
,只需
导入model

尝试
从model导入订单
导入包不会自动加载其子模块。