模块
什么是模块?
模块能干什么?
1.文件化管理 提高了可读性,避免重复代码
2.拿来就用(避免反复造轮子) Python中类库特别多
定义一个模块
一个文件就是一个模块 (模块就是一个工具箱 工具:函数)
import 导入 拿test工具箱
impor时会做三件事:
1.将test.py文件中所有代码取到当前文件
2.当前文件开辟空间
3.等待被调用
import导入同一个文件模块时只执行一次
import导入同一个模块名时,只执行一次
import test #导入 拿test工具箱
import test #导入 拿test工具箱
import test #导入 拿test工具箱
import test
test.t1()
test.t2()
test.t3() 拿大指定的工具
import test #只能将整个工具箱拿出来
a = test.t1
b = test.t2
a()
b()
import test as t #工具箱名字过长可以其别名
t.t1()
import test #导入模块不能加后缀名
飘红线不代表报错
from test import t1 as t 从test工具箱中将t1这个工具拿出来命名为t
def t1():
print("高级工程师")
t1()
t()
import 和 from的区别:
1.from只能执行导入的工具
2.import能够执行整个模块中的所有的功能
3.from容易将当前文件中定义的功能覆盖
4.from 比 import灵活
import 只能导入当前文件下的模块
import 后边不能加点操作
from day15 import ttt
from day15.ttt import func
func()
import和from 使用的都是相对路径
import sys #python解释交互接口
print(sys.path)
sys.path.append("C:\Users\oldboy\Desktop")
print(sys.path)
模块导入顺序:
sys.path.append(r"C:\Users\oldboy\Desktop")
内存 > 内置 > 第三方> 自定义
模块的两种方法:if__name__=="__mail"
1.当做模块被导入 import from
2.当做脚本被执行
import test
只有py文件当做模块被导入时,字节码才会进行保留
以后你们导入模块会产生的坑
1.注意自己定义模块的名字
import abcd
abcd.func()
2.注意自己的思路-------- 循环导入时建议 导入模式放在需要的地方
from test import b
import test
from test import * # 拿整个工具箱
time模块:
import time 内置模块--标准库
print(time.time())#时间戳 浮点数 秒
time.sleep(3) #秒
将时间戳转化为结构化时间
print(time.localtime(time.time())) #命名元祖
print(time.localtime())[0])
print(time.localtime(time.time())).tm_year)
将结构化时间转化成字符串
time1 = time.localtime()
print(time.strftime("%Y-%m-%d %H:%M:%S",time1))
将字符串转化成结构化时间
str_time = "2018-10-1 10:11:12"
time1 = time.strptime(str_time,"%Y-%m-%d %H:%M:%S")
将结构化时间转换成时间戳
print(time.mktime(time_j))
str_time = "2016-10-1 10:11:12"
time_int = time.time() - time.mktime(time.strptime(str_time,"%Y-%m-%d %H:%M:%S"))
print(time.localtime(time_int))
总结:
time.time() 时间戳
time.sleep() 睡眠
time.localtime() 时间戳转结构化
time.strftime() 结构化转字符串
time.strptime() 字符串转结构化
time.mktime() 结构化转时间戳
%Y 年
%m 月
%d 日
%H 时间
%M 分钟
%S 秒
from datetime import datetime,timedelta
print(datetime.now()) #获取当前时间
print((2018,10,1,10,11,12) - datetime(2011,11,1,20,10,10)))
指定时间
将对象转换成时间戳
d = datetime.now()
print(d.timestamp())
将时间戳转换成对象
import time
f_t = time.time()
print(datetime.fromtimetamp(f_t))
将对象转换成字符串
s = "2018-12-31 10:11:12"
print(datetime.strptime(s,"%Y-%m-%d %H:%M:%S"))
import random
原文:https://www.cnblogs.com/x-h-15029451788/p/11397542.html