4. 常用模块
os模块
系统相关
- os.name:# 操作系统类型
- os.uname():获取详细的系统信息(Windows上没有)
- os.environ:操作系统中定义的环境变量
- os.environ.get('PATH'):获取特定key的环境变量值
文件目录相关
- os.path.abspath('.'):查看当前目录的绝对路径
- os.path.join('/Users/michael', 'testdir'):合并路径,推荐用join而不是字符串拼接来合并路径,这样可以正确处理不同操作系统的路径分隔符。
- os.path.split():拆分路径成两部分(目录和文件名)
- os.path.splitext():得到文件扩展名
>>> os.path.split('/Users/michael/testdir/file.txt')
('/Users/michael/testdir', 'file.txt')
>>> os.path.splitext('/path/to/file.txt')
('/path/to/file', '.txt')
- os.rename('test.txt', 'test.py'):文件重命名
- os.remove('test.py'):文件删除
注意:os中没有文件复制操作,可以在shutil模块中找
string模块
- split(str):根据某个字符或正则表达式分割字符串,返回字符串列表
- a.join(list):将list中的字符用a连接,返回合成的字符串
- count(str):str出现的次数(非重叠)
- find(str):查找字符子串,返回第一次出现的位置
- rfind(str):从后往前查找子串,返回最后一次出现的位置
- replace(a,b):将字符串中的a子串替换成b子串
- strip(), rstrip(), lstrip():删除首尾空格/首空格/尾空格(包含换行符)
- lower(), upper():字符串转换为全大写或全小写
- ljust(), rjust():用空格(或其他字符)填充字符串到固定长度
pickle模块:内存数据导入导出文件(二进制数据)
#数据导入文件:
d = dict(name='Bob', age=20, score=88)
with open('dump.txt', 'wb') as f: #打开方式必须加‘b’,因为pickle把数据转成bytes
pickle.dump(d, f) #可以dump任意变量,不一定要是dict
#文件数据导出:
with open('dump.txt', 'rb') as f:
d2 = pickle.load(f)
json模块
dumps(), loads()实现dict和字符串之间的转换,配合文件读写操作实现json文件的读写。
>>> import json
>>> d = dict(name='Bob', age=20, score=88)
>>> json_str = json.dumps(d) #dict数据转json字符串
'{"age": 20, "score": 88, "name": "Bob"}'
>>> json.loads(json_str) #parsing json字符串,转成dict
{'age': 20, 'score': 88, 'name': 'Bob'}