zoukankan      html  css  js  c++  java
  • 模块与包的导入

    同级目录导入模块直接导入,一个py文件就是一个模块 #导入模块的方法: 
    1、import 模块名1,模块名2 #注意只是模块名,不药写。py等后缀
    2、import 模块名 as 别名
    3、from 模块名 import 函数名
    4、from 模块名 import * 跟__all__ = ['money','read1']结合使用 '''

    1、import直接导入模块名
    import导入模块干的事 1、产生新的名称空间 2、在新建的名称空间为全局名称空间,执行文件的代码 3、拿到一个模块名,指向spam.py 
    def read1():
        print('from test.py')
    
    spam.read1()   #apam -> read1-> money 1000  打印的是spam模块中的read1
    
    money = 50
    print(money)   #  50
    print(spam.money)  #1000
    spam.change()    #global改变
    print(spam.money)  # 0
    
    2、from  模块名 import 函数或变量名    
    干的事 1、产生新的名称空间 2、在新建的名称空间为全局名称空间,执行文件的代码 3、直接拿到模块产生的名称空间中的名字
    此种方法优缺点: 优点:方便,不用加前缀;
             缺点:容易跟当前文件的名称空间冲突 。
    from spam import money
    money=10
    print(money)  #注意:因为这种导入方式在用时不能用模块名.变量名的方式指定用哪个,在导入后,又重新给money函数新的指向,所以这里结果是 10
    
    from spam import *  #调用时不写spam.又可以一下子全部导入,可以在源文件中任意位置添加__all__ = ['money','read1']   来控制可以导入那些东西
    
    
    

      

    
    
    
    
    
    
  • 相关阅读:
    模板
    总结
    关于log方线段树
    [ICPC2014 WF]Sensor Network
    背包问题总结
    NOIP2020微信步数
    NOIP2020移球游戏
    CF643D Bearish Fanpages
    CF685C Optimal Point
    论恋爱对学习的促进作用
  • 原文地址:https://www.cnblogs.com/wangkc/p/6936263.html
Copyright © 2011-2022 走看看