python学习笔记(28)文件管理

Posted liyihao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python学习笔记(28)文件管理相关的知识,希望对你有一定的参考价值。

作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明。谢谢!

原链:http://www.cnblogs.com/vamei/archive/2012/09/14/2684775.html

笔记:学的越来越多,是不是忘得也越来越多

#第n讲 文件管理
\'\'\'
文件管理的功能命令基于linux 的文件管理功能
ls  rename
不得不说,linux 的基础命令真的很通用

linux 基础命令
.   指向当前目录
..  指向父目录

文件附加信息
文件类型 文件尺寸 文件权限 文件修改时间 文件读取时间
ls -l file.txt
-rw-rw-r-- 1 liyihao liyihao 585 10月 24 20:42 key

第一个 -  表示文件类型   说明key 是常规文件,目录显示d

rw-rw-r-- 表示文件权限   rw- rw- r-- 分别对应拥有者owner 拥有组owner group 其他人other
linux 登录,我会有一个用户身份   一个组身份  相当于名片
rw- 表示我是改文件的拥有者,对此文件具有  读取r 写入w 权限,没有执行权限,拥有执行权限- 应该为x
第二个rw- 表示如果我的名片组身份证明我是这个组的,那么我有读写 的权限
第三个 如果我不是拥有者 也不是组,那么我只有读的权限

1 代表的硬连接 hard link 数目  link count
liyihao 表示liyihao是文件的拥有者,拥有者有权更新文件权限,rwxrwxrwx

585 表示文件大小,单位字节

10月24 20:42 表示上一次写入时间
后面是文件名称
\'\'\'


#os包
#mkdir(path)
#os.mkdir(path[, mode])
#path 为目录,mode为目录设置的权限数字

import os
path = \'D:\\\\download\\\\new4\'
os.mkdir(path)
print (r\'目录已创建\', path)

#已经创建了

import time
time.sleep(5)
os.rmdir(path)
print (r\'目录已移除\')
#这个看不明显,最好跟下一个一起看。先创建,然后再显示所有的目录,然后再移除目录,然后再刷新显示所有的目录

import os
path = \'D:\\\\test\\\\test\'
os.mkdir(path)
print (r\'目录已创建\', path)  #创建目录

path2 = \'D:\\\\test\'
files = os.listdir(path2)
print (files)   #显示这个目录下所有文件,包括了我们新建的文件夹

os.rmdir(path)  #移除创建的test目录
file2 = os.listdir(path2)
print (file2) #显示目录下所有文件

#如果执行速度快,可以增加time包的延迟时间,来看到PC的处理过程
#输出 [\'button.py\', \'monkeytest.log\', \'monkeytest2.log\', \'monkeytest3.log\', \'monkeytest4.log\', \'test\', \'UCliulanqi_707.apk\', \'yizuanbao2.apk\', \'yizuanbao_PRO_1.0_980.apk\', \'yizuanbao_yz360.apk\']
#     [\'button.py\', \'monkeytest.log\', \'monkeytest2.log\', \'monkeytest3.log\', \'monkeytest4.log\', \'UCliulanqi_707.apk\', \'yizuanbao2.apk\', \'yizuanbao_PRO_1.0_980.apk\', \'yizuanbao_yz360.apk\']
#能看到少了test 的目录

#os.rmdir 是删除空的目录,否则报错OSERROR

#os.remove(path)
#删除指定目录文件
#在test 新建txt文件,显示所有文件,移除txt文件,再次显示所有文件

import os,time
txt1 = open(\'D:\\\\test\\\\1.txt\', \'w\')
print (txt1.name)
txt1.close()
files = os.listdir(\'D:\\\\test\')
print (files)

time.sleep(5)
os.remove(\'D:\\\\test\\\\1.txt\')
file2 = os.listdir(\'D:\\\\test\')
print (file2)

\'\'\'
[\'1.txt\', \'button.py\', \'monkeytest.log\', \'monkeytest2.log\', \'monkeytest3.log\', \'monkeytest4.log\', \'UCliulanqi_707.apk\', \'yizuanbao2.apk\', \'yizuanbao_PRO_1.0_980.apk\', \'yizuanbao_yz360.apk\']
[\'button.py\', \'monkeytest.log\', \'monkeytest2.log\', \'monkeytest3.log\', \'monkeytest4.log\', \'UCliulanqi_707.apk\', \'yizuanbao2.apk\', \'yizuanbao_PRO_1.0_980.apk\', \'yizuanbao_yz360.apk\']
\'\'\'



#rename文件
file = open(\'D:\\\\test\\\\1.txt\', \'w\')
file.close()
time.sleep(5)
os.rename(\'D:\\\\test\\\\1.txt\', \'D:\\\\test\\\\2.txt\')
files = os.listdir(\'D:\\\\test\')
print (files)
os.remove(\'D:\\\\test\\\\2.txt\')
file2 = os.listdir(\'D:\\\\test\')
print (file2)

os.stat(\'D:\\\\test\\\\UCliulanqi_707.apk\')
#输出 os.stat_result(st_mode=33206, st_ino=9007199254743530, st_dev=551390, st_nlink=1, st_uid=0, st_gid=0, st_size=34561962, st_atime=1510121999, st_mtime=1510122000, st_ctime=1510121999)
#查询文件信息,类似上上面的linux -l命令

#查询当前工作目录
os.getcwd()

#改变path文件权限
#os.chmod(path,mode)
#可以修改文件/目录 的权限
#mode 模式 参考资料 http://www.runoob.com/python/os-chmod.html

#改变文件拥有者 和拥有组  (只支持在 Unix 下使用)
#os.chown(path, uid, gid)
#uid user id
#gid group id

#创建软链接
#os.symlink(src, dst)
#src 原地址
#dst 目标地址




\'\'\'
***************************************************分隔
shutil包
\'\'\'
import shutil
shutil.copy(\'D:\\\\test\\\\UCliulanqi_707.apk\', \'D:\\\\apktool\')
print (\'copy success\')


shutil.move(\'D:\\\\apktool\\\\UCliulanqi_707.apk\', \'D:\\\\360Downloads\')
print (\'move success\')

#copy move 两个命令

 

备注:

以上是关于python学习笔记(28)文件管理的主要内容,如果未能解决你的问题,请参考以下文章

VUE学习笔记:28.脚手架vue-cli之vuex

python爬虫学习笔记-M3U8流视频数据爬虫

Python100天学习笔记Day28 前端框架

Python100天学习笔记Day28 前端框架

python学习笔记012——pdb调试

STM32CubeMX学习笔记(28)——FreeRTOS实时操作系统使用(任务管理)