from seven.t import c7

来源:3-2 目的:计算机进制基础

松茸_SYM

2021-07-09

在学习7-9时,跟着七月老师敲代码。在包seven\t下面有c7,c8两个模块。各定义了三个变量;a,b,c,d,e,f。seven下有c11,c11代码如下:

import t
print(c7.a)

IDE会自动在第一行加上一行代码:

from seven.t import c7

运行后提示

Traceback (most recent call last):
File “d:/python/seven/c11.py”, line 2, in
import seven.t
ModuleNotFoundError: No module named ‘seven’

将第一行代码注释掉后,则提示:
Traceback (most recent call last):
File “d:/python/seven/c11.py”, line 3, in
print(c7.a)
NameError: name ‘c7’ is not defined

如果不使用import t导入包,而是使用from t import *,同样提示c7未定义。这是怎么回事?

写回答

1回答

松茸_SYM

提问者

2021-07-09

好吧,试了一晚上找到原因了,使用Import导入包的时候,必须在被导入包的__init__里,将需要导入的模块写入__all__,否则提示模块未定义。

0
0

Python3.8系统入门+进阶 (程序员必备第二语言)

语法精讲/配套练习+思考题/原生爬虫实战

14640 学习 · 4477 问题

查看课程