基本语法:
import 模块名称
或
import 模块名称1, 模块名称2, ...
使用模块中封装好的方法:
模块名称.方法()
案例:使用import导入math模块
import math
# 求数字9的平方根 = 3
print(math.sqrt(9))
import time as t
# 调用方式
t.sleep(10)
提问:已经有了import导入模块,为什么还需要使用from 模块名 import 功能名这样的导入方式?
答:import代表导入某个或多个模块中的所有功能,但是有些情况下,我们只希望使用这个模块下的某些方法,而不需要全部导入。这个时候就建议采用from 模块名 import 功能名
from 模块名 import * 导入这个导入方式代表导入这个模块的所有功能(等价于import 模块名)
'''
导入方式:
from 模块名称 import * 代表导入这个模块中所有函数
from 模块名称 import 函数1, 函数2, 函数3 代表仅导入函数123
调用方式:不需要模块名称,直接使用函数名称即可
'''
# from math import *
# 或
from math import sqrt, floor
# 调用方式
print(sqrt(9))
print(floor(10.88))
'''
time模块是一个与日期时间相关的模块,主要拥有这样两个方法
time.sleep(秒数) :休眠
time.time() :获取当前时间,返回的是一个数字,我们经常使用time.time()获取程序执行时间
'''
# 1、导入time模块
import time
# 2、程序开始前,获取一个时间点
start = time.time()
# 定义一个列表
list1 = []
for i in range(10000000):
list1.append(i)
# 3、当程序执行结束,获取一个时间点
end = time.time()
print(f'以上程序执行一共消耗了{end - start}s时间!')
# 封装一个函数sum_num(),专门对两个参数进行求和操作
def sum_num(num1, num2):
print(num1 + num2)
'''
在Python代码中,只要涉及到模块的导入你都有两种导入方式:① import ② from
'''
# import my_module1
# 导入模块中已经封装好的sum_num()方法
# my_module1.sum_num(10, 20)
from my_module1 import sum_num
# 调用方法
sum_num(10, 20)
在我们编写完自定义模块以后,最好在模块中对代码进行提前测试,以防止有任何异常。
引入一个魔术变量:__name__
,其保存的内容就是一个字符串。随着运行页面的不同,其返回结果也是不同的:
__name__
是在当前页面运行时,其返回结果为__main__
__name__
在第三方页面导入运行时,其返回结果为模块名称(文件名称)基于以上特性,我们可以把__name__
编写在自定义模块中,其语法如下:
if __name__ == '__main__':
# 执行测试代码
定义一个自定义模块my_module2.py
'''
在Python中,以__name__这样命名的变量都属于魔术变量,拥有特殊的含义!
__name__ :是一个特殊的变量,随着运行环境的不同(随着所运行位置的不同,返回结果也是不同的)
__name__返回的结果是一个字符串
① 如果在本页面直接输出__name__,其结果为'__main__'
② 如果在本页面中,存在一个__name__,然后把这个页面导入到其他文件时,则__name__返回结果就是本页面的文件名称,不等于__main__
'''
print(__name__)
# print(type(__name__))
#
if __name__ == '__main__':
print('如果以上条件成立,代表我们正在当前页面中执行此代码')
如果以上条件成立,代表我们正在当前页面中执行此代码
my_module2