博客信息

Python基础之模块(概念、使用)

发布时间:『 2019-06-29 22:42』  博客类别:Python  阅读(626)

模块:

    1.什么叫模块(Java中没有这个概念)

        一个以.py后缀结束的文件

        random/time/os/io/

 

    2.模块中可以存什么东西

        全局变量

        

        函数

        可执行的代码

 

    3.如何使用模块

        import random

        会将模块中所有的代码执行一遍

        random.randint(1,6)

 

        手动引入模块

        import 模块

        导入之后的使用方式

            模块名.方法名()

 

待导入的模块Test00.py

__all__ = ['PI','AAA']
PI = 3.14
def showPI():
    print("PI = %g"%PI)

class AAA():
    id = 100
    def __init__(self):
        self.age = 10
    @classmethod
    def testClassMethod(cls):
        print("我是类方法")

    def test1(self):
        print("我是成员方法test1")

    @staticmethod
    def testStaticMethod():
        print("我是静态方法")

if __name__ == '__main__':
    # print(__name__)
    print('id = %d' % AAA.id)
    AAA.testClassMethod()
    AAA.testStaticMethod()
    AAA().test1()
    showPI()
# print('id = %d' % AAA.id)
# AAA.testClassMethod()
# AAA.testStaticMethod()
# AAA().test1()
# showPI()


引用Test00.py的模块

import Test00
print("--"*20)
print("PI = %g"%Test00.PI)
Test00.showPI()
#调用自定义模块类AAA中的成语方法
# a = Test00.AAA()
# a.test1()
#使用匿名对象直接调用模块Test00中类AAA中的成语方法
Test00.AAA().test1()
#调用Test00模块中类AAA中的静态方法,类方法
Test00.AAA.testStaticMethod()
Test00.AAA.testClassMethod()
import random


注意:里面打印语句的顺序,因为程序入口的问题,默认情况下,import导入模块xxx,会先将xxx.py中的内容给执行一遍,这时我们需要判断执行xxx.py文件内容的程序入口

模块的其它使用方式

模块的使用:

import Test00

import Test00

import Test00

 

注意:无论import多少次,都执行一遍

 

1.import 模块

    访问方式

    模块.方法()

2.from 模块 import 变量,函数,类

    访问方式

        直接访问

        PI

        showPI

        AAA

    from 模块 import *

 

3. __all__ = ['变量名','类名','函数名']

    from 模块 import *

        只导入__all__列表中包含的

 

# import Test00
# print(Test00.PI)
# from Test00 import PI,showPI as _showPI,AAA
# import Test00
# print(PI)
# # showPI()
# _showPI()
# a = AAA()
# a.test1()

# from Test00 import *
# print(PI)
# showPI()
# a = AAA()
# a.test1()
# AAA.testClassMethod()
# AAA.testStaticMethod()

#在Test00模块中,不指明__all__的时候,默认导入所有的

#如果手动指明了列表,这时候导入的是列表中包含的
from Test00 import *
print(PI)
# showPI()
AAA.testClassMethod()


over......



关键字:     Python基础       模块  

备案号:湘ICP备19000029号

Copyright © 2018-2019 javaxl晓码阁 版权所有