正在学习Python爬虫的小白 2022-12-14 23:35 采纳率: 0%
浏览 33

关于一个py程序导入另外一个py文件中的函数和变量的疑问

我们的项目中有1.py、2.py、3.py这样三个文件,但是在这三个文件中只有少部分的代码不同,现在为了避免代码冗余
我们在项目中新建一个0.py的文件用来存储这些共同的代码,1.py 2.py 3.py这个三个文件只需要引入0.py即可
但是在调试代码的时候会向0.py中写入一些并不通用的代码,但由于引入0.py后这个文件是被完全跑了一遍的,所以这些调试
代码也会被执行,那么有没有办法不让他完全执行,之从中取出需要的?
注:1.py 2.py 3.py引入0.py的方式是from 0.py import *
当然可能会说只导入需要的函数和变量就可以了啊?
当然这是可行的,但是重复性的代码不仅仅是只有函数和变量,还有一大串的导包语句,如果像上面的做还是要在代码中
写这些重复的导包语句,这就和最初的目标严重偏差了。
求解!
看到有求示例,我就在这里写一下
现在有这样三个文件1.py 2.py 3.py, 括号中的字母表示代码示例,A为导包语句,B为一个函数,C为一个普通的语句
1.py(A B C D E F G)
2.py(A B C D T K G)
3.py(A B C D L M H)
从三个文件可以看出,这三个文件拥有大量重复代码,现在建立一个共同文件0.py
0.py(A B C D E G T L H X)
共同文件建立之后代码就变为了
1.py(0.py F)
2.py(0.py T K)
3.py(0.py L H)
那么为了A这个导包语句在三个文件中生效,是必须要把0.py完全运行,但这就产生了一个问题,这三个文件中都不需要的X就会被执行以及其他文件不需要的代码也会被执行,现在就是需要这些不需要的不被执行,但导包语句也需要生效!

  • 写回答

1条回答 默认 最新

  • BsonJ 2022-12-15 01:08
    关注

    能不能发个代码或举个例子啊,不是很明白你说的啥

    def 函数名():
        import 包名
    
    评论 编辑记录

报告相同问题?

问题事件

  • 修改了问题 12月15日
  • 创建了问题 12月14日

悬赏问题

  • ¥60 渗透一个指定银行app,拿到客户信息,需要什么级别
  • ¥50 关于在matlab上对曲柄摇杆机构上一点的运动学仿真
  • ¥15 jetson nano
  • ¥15 :app:debugCompileClasspath'.
  • ¥15 windows c++内嵌qt出现数据转换问题。
  • ¥20 公众号如何实现点击超链接后自动发送文字
  • ¥15 用php隐藏类名和增加类名
  • ¥15 算法设计与分析课程的提问
  • ¥15 用MATLAB汇总拟合图
  • ¥15 智能除草机器人方案设计