文件操作

----- ----- 
import os 基本文件能操作,等
----- ----- 
os.sep 可以取代操作系统特定的路径分隔符。windows下为 '\\',linux下为'/'
os.name 字符串指示你正在使用的平台。比如对于Windows,它是'nt',而对于Linux/Unix用户,它是 'posix'
os.linesep 字符串给出当前平台使用的行终止符。例如,Windows使用 '\r\n',Linux使用 '\n' 而Mac使用 '\r'
os.getenv() 获取一个环境变量,如果没有返回none
os.putenv(key, value) 设置一个环境变量值
os.system(command) 函数用来运行shell命令


os.path.isfile() 和判断是否是个目录文件
os.path.isdir(...)   判断是否是个目录


目录:
os.getcwd() 函数得到当前工作目录,即当前Python脚本工作的目录路径
os.chdir(dirname) 改变工作目录到dirname  
os.curdir   返回当前目录字符串 ('.'),没什么用?
os.listdir(path) 返回指定目录下的所有文件和目录名
os.mkdir(path) 创建一个目录
os.makedirs(path) 递归的创建目录!!
os.path.exists() 检验给出的路径是否真地存在
os.walk(top,topdown=True,οnerrοr=None)  遍历迭代目录
文件
os.remove(path) 函数用来删除一个文件
os.path.getsize(name) 获得文件大小,如果name是目录返回0L
os.path.splitext()   分离文件名与扩展名


os.rename(src, dst)   重命名file或者directory src到dst 如果dst已一个存在的, 将抛出OSError. 
在Unix, 如果dst在存且是一个file, 
在某些Unix,中如果src和dst在不同的文件系统中,操作将会失败. 
如果成功, 这命名操作将会是一个原子操作 (这是POSIX 需要). 
os.renames(old, new) 递归重命名文件夹或者文件。像rename()


os.path.abspath(name) 获得绝对路径,一般用于相对路径操作后
os.path.normpath(path) 规范path字符串形式
os.path.basename(path) 返回文件名
os.path.dirname(path) 返回文件路径
os.path.split(path)   返回一个路径的目录名和文件名
os.path.join(path,name) 连接目录与文件名或目录


os.system("xxx") 在系统的shell中运行指令"xxx",成功返回0


----- ----- 
import shutil 高级文件操作
----- ----- 
shutil.copyfile( src, dst) 从源src复制到dst中去。 如果当前的dst已存在的话就会被覆盖掉
shutil.move( src, dst)   移动文件或重命名
shutil.copy( src, dst)   复制一个文件 到一个文件或一个目录
shutil.copy2( src, dst)   在copy上的基础上再复制文件最后访问时间与修改时间也复制过来了,类似于cp –p的东西
shutil.copytree( olddir, newdir, True/Flase) 递归复制一个目录以及目录内的所有内容
如果第3个参数是True,则复制目录时将保持文件夹下的符号连接,
如果第3个参数是False,则将在复制的目录下生成物理副本来替代符号连接
shutil.rmtree( src ) 递归删除一个目录以及目录内的所有内容
shutil.copymode( src, dst) 只是会复制其权限其他的东西是不会被复制的
shutil.copystat( src, dst) 复制权限、最后访问时间、最后修改时间






----- ----- 
import time
----- ----- 
time.strftime('%Y%m%d%H%M%S') #返回当前时间的字符串'20171219111503'
time.sleep(seconds) 推迟调用线程的运行






----- ----- 
压缩文件
----- ----- 
*.用tarfile
    try:  
        tar = tarfile.open(name=sys.argv[1])  
    except:  
        print('Failed opening %s' % sys.argv[1])  
        sys.exit(2)  
    tar.extractall()  
    tar.close() 
虽然可以支持utf-8编码,但用winrar打开/解压还是乱码,用bar工具解压则是正常的中文。因此,应该是winrar支持utf-8编码导致问题。


*.用os.system()调用系统应用




----- ----- 
文件操作
----- ----- 
f = open('FilePath','w') # 模式可以使 w写 r读 a追加 t文本 b二进制,不带参数则默认是rt
f.wtite('xxxx')
f.close()
f = open('FilePath',encoding = 'utf-8') #指定编码格式为utf-8
line = f.readline()






----- ----- 
pickle
----- ----- 
可以将任何纯python对象存储到一个文件中,后面可以取回来。


pickle.dump(obj, file) # 存储对象,其中file是一个已打开的文件指针
obj = pickle.load(file) # 读取对象







  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值