Python的模块化

Python的模块化:每一个.py文件相当于C++的一个个.cpp文件,只是没有头文件,直接import .py文件。

        便于代码组织。

        在Python中有两种import方法,一种是直接import module1,还有一种是from module1 import whatYouWantOr*

        示例如下,module1与module2是两个将要被import的模块,module3与module4是测试模块,分别测试上面的两种import方法:

[python]  view plain copy
  1. #module1.py  
  2. x=10  
  3.   
  4. def func():  
  5.     print("This is in module1, x=",x)  
  6.   
  7. #module2.py  
  8. x=20  
  9.   
  10. def func():  
  11.     print("This is in module2, x=",x)  
  12.   
  13. #module3.py  
  14. import module1,module2  
  15.   
  16. module1.x=5  
  17. module1.func()  
  18.   
  19. module2.x='a'  
  20. module2.func()  
  21.   
  22. #module4.py  
  23. from module1 import x,func  
  24. from module2 import x,func  
  25.   
  26. x=5  
  27.   
  28. func()  

        module3.py可以得到预想的结果,但module4.py只能得到"This is in module2, x= 20",并不能得到module1中的信息,这是因为当将要import的几个模块中有名字相同的数据时,使用第二种import方法时,后import的module中的数据会覆盖之前import的module中的同名数据。

        所以不建议使用第二种方法,虽然可以少打一些代码,但给未来带来的产生bug风险实在太大。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值