时间模块之datetime
1.导入模块
datetime 是对日期数据进行处理的主要模块
import datetime
2.获取日期时间信息
import datetime naw_date = datetime.datetime.today() # 打印现在的日期和时间 naw_time = datetime.date.today() # 打印当前日期 print(naw_date) # 2022-07-15 15:53:49.136500 print(naw_time) # 2022-07-15 print(naw_date.year) # 2022 print(naw_date.month) # 7 print(naw_date.weekday()) # 4 print(naw_date.date()) # 2022-07-15 print(naw_date.isoweekday()) # 5
拓展知识:
通过获取当前时间和设定时间可用于设计定时器等
import datetime naw_time = datetime.date.today() # 打印当前日期 t1 = datetime.timedelta(days=10) print(naw_time + t1) # 10天后的日期 2022-07-25 print(naw_time - t1) # 10天前的日期 2022-07-05
os模块
(1) os.mkdir()、os.makedirs():创建目录
传入一个路径,创建目录,当目录存在的话会报错所以我们可以用异常处理,或者os.path.exists()函数判断文件夹是否存在。
import os try: os.mkdir(r'project') # 创建单层目录 except Exception as e: print('目录以存在') try: os.makedirs(r'aa/bb/cc') # 创建多层目录 except Exception as e: print('目录以存在')
(2) os.rmdir()、os.removedirs():删除目录
传入一个路径,删除指定路径下的文件夹,只能删除空文件夹,删除非空文件夹会报错。
import os os.rmdir(r'project') # 删除单级空目录 os.removedirs(r'aa/bb/cc') # 由内而外递归删除空目录直到有数据的目录为止
(3) os.listdir():列举指定路径下的文件名称(文件、目录)
传入一个路径,返回的是该路径下所有
文件和目录
以列表形式返回;import os print(os.listdir(r'D:\\'))
(4) os.rename():重命名文件
传入一个文件名,再有逗号隔开传入新名字
import os os.rename(r'a1.txt',r'a2.txt')
(5) os.remove():删除文件
传入一个文件名进行删除
import os os.remove(r'a2.txt')
(6) os.getcwd():获取当前工作路径
获取当前工作的绝对路径
import os print(os.getcwd())
(7) os.path.dirname():获取当前文件所在的目录路径
也可以传入一个完整的路径,只获取绝对绝对路径
import os print(os.path.dirname(__file__)) print(os.path.dirname(r'/Users/huyufeng/Desktop/每日总结/aa/bb/cc/a1.txt')) '''打印结果 /Users/huyufeng/Desktop/每日总结 /Users/huyufeng/Desktop/每日总结/aa/bb/cc '''
(8) os.path.abspath(__file__):获取当前文件的绝对路径
import os print(os.path.abspath(__file__)) '''打印内容 /Users/huyufeng/Desktop/每日总结/cs.py '''
(9) os.path.exists()、os.path.isdir()、os.path.isfile:判断路径是否存在(文件、目录)
传入一个路径,判断指定路径下是否存在。存在返回True,否则返回False
import os print(os.path.exists(r'cs.py')) # 判断指定路径下的目录是否存在 print(os.path.isdir(r'a1.txt')) # 只用于判断路径是否是目录 print(os.path.isfile('day21.py')) # 只用于判断路径是否是文件 '''打印结果 True False True '''
(10) os.path.join():拼接路径
传入两个路径,将该路径拼接起来,形成一个新的完整路径
import os path1 = 'a1.txt' path2 = r'/Users/huyufeng/Desktop/每日总结/aa/bb/cc' new_path = os.path.join(path2,path1) print(new_path) '''打印结果 /Users/huyufeng/Desktop/每日总结/aa/bb/cc/a1.txt '''
(11) os.path.getsize():获取文件大小
传入一个文件的路径,返回该文件的大小(bytes)
import os print(os.path.getsize(r'day19.py')) print(os.path.getsize(r'/Users/huyufeng/Desktop/每日总结/aa/bb/cc/a1.txt')) '''打印结果 单位为(bytes) 558 3 '''
sys模块
path():
返回模块的搜索路径列表
version():
返回 Python 解释器的版本信息
platform():
返回操作系统平台名称
import sys print(sys.path) print(sys.version) ''' 3.9.2 (v3.9.2:1a79785e3e, Feb 19 2021, 09:06:10) [Clang 6.0 (clang-600.0.57)] ''' print(sys.platform) ''' darwin '''
grgv:以列表形式接收参数
import sys a=sys.argv b=len(sys.argv) print(a) print(b) '''打印结果 ['/Users/huyufeng/Desktop/每日总结/cs.py'] 1 '''
json模块
json模块也称之为序列化模块
json模块是不同编程语言之间数据交互必备的模块(处理措施)首先肯定是字符串 其次引号是标志性的双引号
dumps:
传入一个字典将其编码为json格式的字符串
import json test_dict = {'name':'aaa','age':18,'habby':'run'} data = json.dumps(test_dict) print(data,type(data)) '''打印结果 {"name": "aaa", "age": 18, "habby": "run"} <class 'str'> '''
loads:
传入一个json格式将其解码为字典
import json test_dict = {'name':'aaa','age':18,'habby':'run'} data = json.dumps(test_dict) json_dict = json.loads(data) print(json_dict,type(json_dict)) '''打印结果 {'name': 'aaa', 'age': 18, 'habby': 'run'} <class 'dict'> '''
作业: