python import 之后,main模块中的函数为什么不能被被引入的模块访问?

同一目录下的两个文件a.py,b.py

--a.py

--b.py

a.py内容


print("start a.py....")

def fooa():

print("执行fooa")

import b

b.py内容

print("start b.py")

fooa()#为什么b已经被a.py中引用了,却不能被以a作为主模块调用执行?

print("end b.py")

在命令行中执行python a.py,为什么a.py(main)引入了b之后,b中不能访问主模块中的函数fooa??

阅读 1.5k
1 个回答

反了,彻底反了,你在 a 导入 b,这意味这你在 a 中可以用 b 的东西,而不是 b 可以用 a 的东西


下面的做法是合法的,但是不应该这么做,要什么模块就显性的导入什么模块,这才是良好的编程习惯

a.py

import requets
import b

b.py

requests.get()

然后运行 python a.py 是不会报错 b 找不到 requets 的

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题