模块相互调用问题(python) 大家别拍砖头

chenbin200818 2011-01-19 10:27:55
#a.py
import b
g_str = "Hello"

................................
#b.py


我的问题是 a调用b ,但是b中又想调用 a中的 g_str 请问 如何处理
...全文
147 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
iambic 2011-01-21
  • 打赏
  • 举报
回复
又是无满意结贴,你这是在骂我还在在骂你自己?
iambic 2011-01-20
  • 打赏
  • 举报
回复
模块中最上层应该只有常量定义和函数定义。主模块的主函数可能会打破这一点,所以你新建个模块,比如叫x,把主函数从a.py移动到x.py里,这样主模块不会被动依赖了。
chenbin200818 2011-01-19
  • 打赏
  • 举报
回复
a是一个主模块, 在a中会经常调用b模块中的函数

那么我想在b中调用a中生成的数据,可以直接import a吗 ,好像这不可以吗
有没有更好的办法

我也想过 用函数的形式来调用, 但如何来调呢
iambic 2011-01-19
  • 打赏
  • 举报
回复
一般正常调用就可以。但是:
一、尽量避免模块间互相依赖,考虑传递参数,或者使用duck object来解决依赖。
二、尽量把依赖放在函数里,而不是模块的最上层。把依赖放在函数里可以使依赖调用延迟到模块结束后,而不是在加载模块的时候就依赖,防止对一个未完全初始化的模块操作。

37,720

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧