Python 模块调用

模块:".py"后缀的文件即模块
类:使用class语句封装一个类
函数:使用def语句封装一个函数
变量:使用赋值语句赋值一个变量

模块中不但可以直接存放变量,还能存放函数,还能存放类。

在这里插入图片描述

还可以使用自己写的模块(其实就是后缀名为.py的文件)

在这里插入图片描述

from  ...... import...

通过这个语句可以从模块中导入指定的部分到当前的模块。

在这里插入图片描述
例如:

# 【文件:test.py】
def hi():
    print('函数“hi”已经运行!')

# 【文件:main.py】
from test import hi  # 从模块test中导入函数“hi”
hi()  # 使用函数“hi”时无需加上“模块.”前缀

当我们有了一大堆py文件组成一个程序的时候,为了指明某个py文件是程序运行入口,我们可以在该文件中写出这样的代码:

# 【文件:xx.py】

代码块 (1)……

if __name__ == '__main__':
    代码块 (2)……

在这里插入图片描述

(因为我们是为了指明该py文件就是程序入口才给这个py文件添加了的这个if name==‘main’)的方法,所以当这个py文件直接被运行时,代码块(2)才会继续执行,但当这个py文件没有被直接执行而是被其他程序导入时,代码(2)不被执行)

集体代码如下:
(1)有一个名叫story.py的程序,相关代码如下:(注意里面没有指定程序入口的函数)

sentence='从前有坐山,'
def mountion():
	print('山里有座庙,')
class Temple:
	sentence='庙里有个老和尚,'
	def reading(self)print('在讲一个长长的故事。')

(2)在一个名叫main.py的程序中直接调用这个story.py的模块:(注意这个mian.py的程序里有指定程序入口的函数,然后这个main.py程序直接被调用了)

import story
if __name__ == '__main__':
    print(story.sentence)
    story.mountain()
    A = story.Temple()
    print(A.sentence)
    A.reading()
    print()

运行结果:
在这里插入图片描述
里面的内容都输出了

(3)现在对刚才的story.py程序进行修改,就是末尾添加指定程序入口的函数(原本是没有的)注意:当含有指定程序入口函数的程序被别的程序调用时,指定程序入口的函数里面的语句不会被执行

story.py:

sentence = '从前有坐山,'
def mountion():
	print('山里有座庙,')
class Temple:
	sentence = '庙里有个老和尚,'
   	def reading(self):
        	print('在讲一个长长的故事。')
#程序入口指定函数
if __name__ == '__main__':
    print(story.sentence)
    story.mountain()
    A = story.Temple()
    print(A.sentence)
    A.reading()
    print()

main.py:

import story

运行结果:
在这里插入图片描述

可以看到运行结果啥都没有!因为调用story.py的所有语句都在这个指定函数入口的这个函数里面,当这个story.py没有直接运行,而是在别的程序里面被调用的时候,这个指定程序入口函数代码不会被执行!!就是下面这个图上的话!!

在这里插入图片描述

dir()函数:查看一个模块,看看里面有什么变量,函数,类,类方法等。

import  random 
print(dir(random))

运行结果:

在这里插入图片描述

比如我们看到了seed这个词,那么我们就可以百度它的用法:

在这里插入图片描述
当然除了模块外dir()函数也可以用来查询别的东西:

a = ''  # 设置一个字符串
print('字符串:')
print(dir(a))    # 把字符串相关的函数展示出来

a = []  # 设置一个列表
print('列表:')
print(dir(a))    # 把列表相关的函数展示出来

a = {}  # 设置一个字典
print('字典:')
print(dir(a))  # 把字典相关的函数展示出来

在这里插入图片描述

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值