导入的模块可以使用已导入的模块吗?
编辑:因为没有人理解我的问题,所以我会重新写一遍。
文件1
import turtle
import file2
turtle.uselesscode()
turtle.mainloop()
文件2
turtle.goto(-50,-50)
turtle.fd(50)
#more code with the turtle module
问题:
- 为什么在导入文件2的时候会出现错误(代码可以运行):
名称错误:'Turtle' 这个名字没有定义
(模块“文件2”无法使用在“文件1”中导入的turtle)
- 我可以用exec()来代替导入模块“文件2”吗?这样的话,我能在文件2里不写
from turtle import *
吗?
1 个回答
0
问题标题: 如果我理解你的问题没错,答案是“是的”,但如果你不打算使用某个模块,就没必要去导入它。因为如果模块X使用了模块Y,那么模块Y其实已经被模块X内部导入了。
如果你想了解更多,可以自己去看看模块X的代码,看看它是如何用“Import”来导入模块Y的。
问题描述: 关于exec()这个函数,它的作用是执行以字符串格式传入的Python代码。还有一个类似的函数叫eval(),它的行为也差不多,但它不会执行代码。你不能用它来创建变量,但可以查看内容。