os:
获取运行当前py文件的绝对路径:
abspath中添加路径,会直接和绝对路径拼接。
folder_path = os.path.abspath("") print(folder_path)
路径拼接:
mac系统路径:file/TranslucentTB
win系统路径:file\TranslucentTB
最好使用提供的join方法拼接路径。
file_path = os.path.join("file","TranslucentTB") print(file_path)
判断文件是否存在:
os.path.exists(fileName)
返回真假值
file_path = os.path.join("file","TranslucentTB") print(file_path) if not os.path.exists(file_path): os.makedirs(file_path)
遍历文件夹:
(只看子目录
返回 子列表对应的文件名、文件夹名的 字符串数组
name_list = os.listdir(folder_path) print(name_list)
(遍历所有存在的**目录
返回的是 一个存储数组类型的元组
数组的每个元素对应一个文件夹
文件夹中包括了一个文件的名称;
这个文件的文件夹数组;
这个文件的文件数组。
name_lists = os.walk(folder_path) for tuple1 in name_lists: print(tuple1) print(type(tuple1))
random:
随机获取一个数组元素:
random.choice
打乱数组结构:
random.shuffle
生成一副扑克牌,并洗牌和抽牌:
datetime:
from datetime import datetime,timedelta,timezone:
从datetime包引入三个类
获取当前时间:
datetime.now()
tz = timezone(timedelta(hours=8)) print(datetime.now()) #2024-08-14 13:37:25.789656 print(tz) #UTC+08:00 print(datetime.now(tz))#2024-08-14 13:37:25.789656+08:00
对时间进行加减:
timedelta()
v1 = datetime.now() + timedelta(days=-1) print(v1)#2024-08-13 13:37:25.789656
格式化时间,解析时间:
date_time_type_obj.strftime("%Y年")
datetime.striptime(obj," ") // " "完全匹配字符串时间格式
v1 = datetime.now() + timedelta(days=-1) print(v1)#2024-08-13 13:37:25.789656 v2= v1.strftime("%d日%m月%Y年") print(v2)#13日08月2024年 v3 = datetime.strptime(v2,"%d日%m月%Y年") print(v3)#2024-08-13 00:00:00
以时间命名文件小案例:
ini文件:
创建一个ini类型的文件:
[mysqld] datadir = /var/lib/mysql log-bin = py-mysql-bin character-set-server = utf8 collation-server = utf8_general_ci log-error = /var/log/mysqld.log symbolic-links = 0 [mysqld_safe] log-error = /var/log/mariadb/mariadb.log pid-file = /var/run/mariadb/mariadb.pid
和文件建立连接:
parser = configparser.ConfigParser() # data = parser.read("my.ini",encoding = "utf-8") # print(data) parser.read("my.ini",encoding = "utf-8")
获取prefix:
获取key对应value:
list = parser.sections() print(list) #['mysqld', 'mysqld_safe', 'client'] v1 = parser.get("mysqld","socket") print(v1) #/var/lib/mysql/mysql.sock
删除prefix
删除key:
仅调用remove_()方法只会修改内存空间存储读到的数据
需要write()方法实际覆盖ini文件的内容
parser.remove_section("client") parser.remove_option("mysqld","socket") parser.write(open('my.ini', encoding='utf-8', mode='w'))
修改和添加:
set()方法可以创建或修改键值对。
parser.add_section("group") parser.set("group", "datadir", "abc") parser.write(open('my.ini', encoding='utf-8', mode='w'))