15.模块
模块是一个包含所有你定义的函数和变量的文件,其后缀名是.py。
命名方式有三种:内置命名空间、全局命名空间、本地命名空间。程序在查询这三种命名空间的时候,就按照从里到外的顺序,即:Local Namespaces --> Global Namesspaces --> Built-in Namesspaces。
模块的导入:
1.import 模块名
eg:
import TemperatureConversion
print('32摄氏度 = %.2f华氏度' % TemperatureConversion.c2f(32))
print('99华氏度 = %.2f摄氏度' % TemperatureConversion.f2c(99))
2.第二种:from 模块名 import 函数名
eg:
from TemperatureConversion import c2f, f2c
print('32摄氏度 = %.2f华氏度' % c2f(32))
print('99华氏度 = %.2f摄氏度' % f2c(99))
# 32摄氏度 = 89.60华氏度
# 99华氏度 = 37.22摄氏度
from TemperatureConversion import c2f, f2c
print('32摄氏度 = %.2f华氏度' % c2f(32))
print('99华氏度 = %.2f摄氏度' % f2c(99))
# 32摄氏度 = 89.60华氏度
# 99华氏度 = 37.22摄氏度
3.第三种:import 模块名 as 新名字
import TemperatureConversion as tc
print('32摄氏度 = %.2f华氏度' % tc.c2f(32))
print('99华氏度 = %.2f摄氏度' % tc.f2c(99))
# 32摄氏度 = 89.60华氏度
# 99华氏度 = 37.22摄氏度
4.if_name_==‘main’
当 .py 文件被直接运行时,if name == 'main’之下的代码块将被运行;当 .py 文件以模块形式被导入时,if name == 'main’之下的代码块不被运行。
#const.py
PI = 3.14
def main():
print("PI:", PI)
if __name__ == "__main__":
main()
from const import PI
def calc_round_area(radius):
return PI * (radius ** 2)
def main():
print("round area: ", calc_round_area(2))
main()
#运行const.py,输出为PI:3.14
#运行area.py,输出为round area:12.56
5.搜索路径
当解释器遇到 import 语句,如果模块在当前的搜索路径就会被导入。
import sys
print(sys.path)
# ['C:\\ProgramData\\Anaconda3\\DLLs', 'C:\\ProgramData\\Anaconda3\\lib', 'C:\\ProgramData\\Anaconda3', 'C:\\ProgramData\\Anaconda3\\lib\\site-packages',...]
6.包
创建包分为三个步骤:
创建一个文件夹,用于存放相关的模块,文件夹的名字即包的名字。
在文件夹中创建一个 init.py 的模块文件,内容可以为空。
将相关的模块放入文件夹中。
16.datetime模块
datetime.now(tz=None) 获取当前的日期时间,输出顺序为:年、月、日、时、分、秒、微秒。
datetime.timestamp() 获取以 1970年1月1日为起点记录的秒数。
datetime.fromtimestamp(tz=None) 使用 unixtimestamp 创建一个 datetime。
将datetime对象转换为任何对象的格式
2.date类
class date:
def __init__(self, year, month, day):
pass
def today(cls):
pass
3.time类
class time:
def __init__(self, hour, minute, second, microsecond, tzinfo):
pass
4.timedelta类
timedelta 表示具体时间实例中的一段时间。
class timedelta(SupportsAbs[timedelta]):
def __init__(self, days, seconds, microseconds, milliseconds, minutes, hours, weeks,):
pass
def days(self):
pass
def total_seconds(self):
pass