模块

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。
模块_第1张图片
模块_第2张图片
将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

你可能感兴趣的:(模块)