材料参考《Python编程快速上手-让繁琐工作自动化》
1、导入os模块:import os
2、常用方法及示例
|
函数或方法 |
说明 | 示例 |
|
os.getcwd() |
取得当前工作路径 | |
|
os.chdir(\'‘) |
变更当前工作路径 | os.chdir(\'D:\Program Files\python3\pyworks\') |
| os.makedirs(\'\') | 创建新文件夹 | os.makedir(\'C:\\delicious\\walnut\\waffles\') |
| os.path.join(\'a\',\'b\',...) | 拼接返回路径字符串 |
os.path.join(\'usr\',\'bin\',\'spam\') Windows中返回:\'usr\\bin\\spam\' OS X或Linux中返回:\'/usr/bin/spam\' |
| os.path.abspath(path) | 返回path的绝对路径 | os.path.abspath(\'.\') |
| os.path.isabs(path) | 判断是否为绝对路径 | 是则返回True,否则返回False |
| os.path.relpath(path,start) | 返回从start到path的相对路径 | |
| os.path.dirname(path) | 返回path中最后一个\前的内容 | 从path中获取目录名称 |
| os.path.basename(path) | 返回path中最后一个\后的内容 | 从path中获取文件名称 |
| os.path.split(path) | 同时获取目录名称和基本名称 | |
| os.path.getsize(path) | 查看文件大小字节数 | |
| os.listdir(path) | 返回path目录下文件名列表 | |
| os.path.exists(path) | 检查文件/文件夹是否存在 | 返回True或False |
| os.path.isfile(path) | 检查path存在且是文件 | 返回True或False |
| os.path.isdir(path) | 检查path存在且是文件夹 | 返回Ture或False |
3、循环获取目录下的每个文件名
1 import os 2 for filename in os.listdir(\'C:\\Windows\\System32\'): 3 print(filename)
4、判断文件若已存在则删除
import os if os.path.exists(\'tdFile.txt\'): os.remove(\'tdFile.txt\')
5、计算目录下文件总大小
1 import os 2 totalSize = 0 3 for filename in os.listdir(\'C:\\Windows\\System32\'): 4 totalSize = totalSize + os.path.getsize(os.path.join(\'C:\\Windows\\System32\',filename)) 5 print(totalSize)
6、文件读写3个步骤
- 调用open()函数返回File对象
- 调用File对象的read()或write()方法
- 调用File对象的close()方法关闭文件
| 函数/方法 | 说明 | 举例 |
| open() |
函数,打开文件返回File对象 参数1为文件,可带路径 参数2为打开模式;w表示覆盖写入,a表示文本添加 若文件不存在,写/添加模式会创建新的空文件 |
HelloFile = open(\'C:\\users\\folder\\hello.txt\',w) |
| read() | File对象read()方法,读取整个文件为一个大字符串 | HelloContent = HelloFile.read() |
| readlines() |
File对象readlines()方法,将文本中每一行形成一个字符串列表; 每个字符串以"\n"结束(最后一行除外); |
HelloFile.readlines() |
| write() |
File对象write()方法,将字符串写入文件,会返回写入的字符个数 首先需要文件以写/添加模式打开 另write()不会像print()函数在字符串末尾自动添加换行字符 |
HelloFile.write(\'Hello world!\n\') |
| close() |
File对象close()方法 |
HelloFile.close() |
7、用shelve模块保存变量
- 将程序中的变量保存到二进制的shelf文件中
| 函数/方法 | 说明 | 举例 |
| import shelve | 导入shelve模块 | |
| shelve.open() |
函数,打开二进制文件 不需要指定打开模式,既能读又能写 |
shelfFile = shelve.open(\'mydata\') |
| 保存变量,类似字典,将值赋给指定的键 |
cats = [\'Zophie\',\'Pooka\',\'Simon\'] shelfFile[\'cats\'] = cats |
|
| 读取变量,类似字典,传入键名获取对应值 | shelfFile[\'cats\'] | |
| close() | 关闭文件方法 | shelfFile.close() |
| keys()/values() | 方法,类似字典 | shelfFile.keys() |