import覆盖的问题
本帖最后由 peicd 于 2021-4-21 22:58 编辑请问大神一个问题:
一、新建一个x.py,里面建立两个函数
def b():
a()
def a():
print(2222222)
二、然后将这个x.py import 进去另一y.py里面
from x import *
def a():
print(3333333)
b()
a()
三、运行y.py 结果如下
2222222
3333333
求助:import进去后重新编写会对a()进行覆盖,但我在y.py 对a()函数进行了修改,并不影响x.py里面的b()函数,怎么样才能对a()进行覆盖,或者本身这种操作就是不对的,需要用其他方法进行以免造成命名混乱? 定义一个class类 也没啥问题,此a非彼a,不过实际操作中,都是为了避免尴尬,函数名会起的比较清晰,而不会起很多重名的,给自己找不自在 wp231957 发表于 2021-4-22 07:53
也没啥问题,此a非彼a,不过实际操作中,都是为了避免尴尬,函数名会起的比较清晰,而不会起很多重名的,给 ...
老师你好,从结果看我知道此a非彼a,但我是想让此a变成彼a,怎么操作? peicd 发表于 2021-4-22 08:18
老师你好,从结果看我知道此a非彼a,但我是想让此a变成彼a,怎么操作?
说说你想实现神马呢为啥要覆盖 wp231957 发表于 2021-4-22 09:11
说说你想实现神马呢为啥要覆盖
发现一个代码如下:
from x import *
def a():
.......
if __name__ == "__main__":
run()
在整个模块里面都没有对run函数的定义,这个run的定义应该是在import导入的模块x里面的,猜想,run函数里面应该有对a()的运行条件。怎么让a()顺利运行起来?
页:
[1]