Zen的小站

小舟从此逝,江海寄余生

0%

【python基础】常用内部库

文章概览

操作文件夹

import os

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# 获取所有子文件
# topdown 输出顺序,True是从根文件夹到叶文件,默认为False
for root, dirs, files in os.walk("D:\Program", topdown=True):
print(root)
for 【python基础】操作文件 in files:
print(os.path.join(root, 【python基础】操作文件))
for 【python基础】操作文件 in dirs:
print(os.path.join(root, 【python基础】操作文件))

# 获取文件夹下文件名
files = os.listdir("D:\Program")

# 字符串合并路径
# 两个合并
file_path = os.path.join(root, name)
# 带 . 合并
file_path_split = file_path.split('.')
copy_file_path = '.'.join([f'{file_path_split[0]}_copy', file_path_split[1]])

读写文档

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 打开
with open(file, 'r+', encoding='UTF-8') as f:
# 读取,读取后光标会向后移动
data = f.read() # 读取全部
_data = f.read(20) # 读取20个字符
data_line = f.readline()
data_lines = f.readlines()
# 删除
f.truncate(0) # 删除全部
f.truncate(3) # 从光标所在位置向后删除
# 写入,写会覆盖原有字符
f.write("qwer")
# 控制光标
fr.seek(13)

python 读写所有文件都可以用这种方法,相当于用 记事本 打开的。

推荐修改文档方法:先新建一个文件,写入,删除源文件,新文件改名。因为删除后写入容易出现神奇的bug。

re

1
2
3
4
5
6
7
8
9
10
11
12
import re
# 搜索
result = re.search("qwer", string) #并返回第一个匹配
# result.group() 返回匹配内容
# result.start() 或者 end() 返回位置数字
result = re.findall("qwer", string) # 返回列表

# 分割
string_split = re.split("qwer", string, 10) # 返回列表。第三个参数控制分割次数,默认完全分割

# 替换
string = re.sub("origin_word", "new_word", string)

os

1
2
3
4
5
# 字符串合并路径
file_path = os.path.join(root, name)

# 切换工作路径
os.chdir(path)

random

1
2
3
4
5
import random
# 生成随机整数
a = random.randint(0, 10) # 左闭右闭
# 生成随机小数
b = random.random() # 0,1之间的随机小数

math

1
2
3
import math
# 反函数
a = math.atan(1)

subprocess

运行命令行命令

1
output = subprocess.run(['python'], stdout=subprocess.PIPE).stdout.decode('utf-8')

多想多做,发篇一作

-------------本文结束感谢您的阅读-------------
// 在最后添加