python下对目录&文件的操作

深藏阁楼爱情的钟 2023-10-02 08:59 81阅读 0赞

Windows桌面上:

总文件夹 子文件夹01

文档01.txt
-——————————————————————————————————————————

保存路径:

C:\Users\del\Desktop\总文件夹\文档01.txt

文档:文档01.txt的内容如下:

地球
中国
美国——拉斯维加斯
日本——冲绳
韩国

=================================================================================

import os
import shutil

#创建目录

#os.mkdir(‘C:\\Users\\del\\Desktop\\总文件夹\\子文件夹01\\zz子子文件夹01’) #当zz子子文件夹01存在时,无法创建,报错

#删除目录,只能删除空目录,如果里面有文件,会报错,不能删除

#os.rmdir(‘C:\\Users\\del\\Desktop\\总文件夹\\子文件夹01\\zz子子文件夹01’)

#删除目录,如果目录里面包含文件,用此语句,就会连目录带文件一起删除

#shutil.rmtree(‘C:\\Users\\del\\Desktop\\总文件夹\\子文件夹01\\zz子子文件夹01’)

#重命名目录

#os.rename(‘C:\\Users\\del\\Desktop\\总文件夹\\子文件夹01’,’C:\\Users\\del\\Desktop\\总文件夹\\子文件夹012’)

#移动目录,下面示例,将子文件夹01,移动到桌面文件夹下面了,总文件夹下面就没有子文件夹01了
#如果子文件夹01下面包含文件,就连文件也一起移动过去,总文件夹下面同样啥都没有

#shutil.move(‘C:\\Users\\del\\Desktop\\总文件夹\\子文件夹01’,’C:\\Users\\del\\Desktop\\桌面文件夹’)

#复制目录:shutil.copytree(“olddir”,”newdir”)。olddir和newdir都只能是目录,且newdir必须不存在。
#注意第二个目录必须不存在,如果存在则会报错,复制后,第一个目录保持不变,还在原来的里面
#如果原来即第一个目录里面包含文件,则连文件一起复制过去
#注意:此处是把子文件夹01下面的文件复制过去了,子文件夹01没有

#shutil.copytree(‘C:\\Users\\del\\Desktop\\总文件夹\\子文件夹01’,’C:\\Users\\del\\Desktop\\桌面文件夹001’)

#shutil.copytree(‘C:\\Users\\del\\Desktop\\总文件夹’,’C:\\Users\\del\\Desktop\\桌面文件夹001’)

#上面是把总文件夹下面的所有复制过去了

#—————————————————————————————————————————————————————————
#—————————————————————————————————————————————————————————
#—————————————————————————————————————————————————————————

#获得当前Python脚本工作的目录路径:

#print(os.getcwd())

#执行结果:C:\Users\del\PycharmProjects\untitled\ff
#—————————————————————————————————————————————————————————

#返回指定目录下的所有文件和目录名:

#print(os.listdir(‘C:\\Users\\del\\Desktop\\总文件夹’))

#执行结果:[‘子文件夹01’, ‘文档01.txt’]
#—————————————————————————————————————————————————————————

#检验给出的路径是否是一个目录:
#print(os.path.isdir(‘C:\\Users\\del\\Desktop\\总文件夹’))
#print(os.path.isdir(‘C:\\Users\\del\\Desktop\\总文件夹\\子文件夹01’))
#print(os.path.isdir(‘C:\\Users\\del\\Desktop\\总文件夹\\文档01.txt’))

#执行结果:

#True
#True
#False
#—————————————————————————————————————————————————————————

#检验给出的路径是否是一个文件:

#print(os.path.isfile(‘C:\\Users\\del\\Desktop\\总文件夹’))
#print(os.path.isfile(‘C:\\Users\\del\\Desktop\\总文件夹\\子文件夹01’))
#print(os.path.isfile(‘C:\\Users\\del\\Desktop\\总文件夹\\文档01.txt’))

#执行结果:

#False
#False
#True
#—————————————————————————————————————————————————————————

#判断是否是绝对路径:

#print(os.path.isabs(‘总文件夹\\子文件夹01’))
#print(os.path.isabs(‘C:\\Users\\del\\Desktop\\总文件夹\\子文件夹01’))

#执行结果:

#False
#True
#—————————————————————————————————————————————————————————

#检验路径是否真的存在:

#print(os.path.exists(‘C:\\Users\\del\\Desktop\\总文件夹\\子文件夹01’))
#print(os.path.exists(‘C:\\Users\\del\\Desktop\\总文件夹\\子文件夹0111’))
#print(os.path.exists(‘总文件夹\\子文件夹01’))

#执行结果:

#True
#False
#False
#—————————————————————————————————————————————————————————

#分离一个路径的目录名和文件名: 返回的是一个元组

#print(os.path.split(‘C:\\Users\\del\\Desktop\\总文件夹\\文档01.txt’))

#执行结果:

#(‘C:\\Users\\del\\Desktop\\总文件夹’, ‘文档01.txt’)
#—————————————————————————————————————————————————————————

#分离扩展名: 返回的是一个元组

#print(os.path.splitext(‘C:\\Users\\del\\Desktop\\总文件夹\\文档01.txt’))

#执行结果:

#(‘C:\\Users\\del\\Desktop\\总文件夹\\文档01’, ‘.txt’)
#—————————————————————————————————————————————————————————

#获取路径名:

#print(os.path.dirname(‘C:\\Users\\del\\Desktop\\总文件夹\\文档01.txt’))

#执行结果:

#C:\Users\del\Desktop\总文件夹
#—————————————————————————————————————————————————————————

#获取文件名:

print(os.path.basename(‘C:\\Users\\del\\Desktop\\总文件夹\\文档01.txt’))

#执行结果:

#文档01.txt
#—————————————————————————————————————————————————————————

===========================================================================================================================================

===========================================================================================================================================

import os
import shutil

#删除一个文件: 把目录 C:\\Users\\del\\Desktop\\总文件 夹下面的 文档01.txt 这个文件删除了

#os.remove(‘C:\\Users\\del\\Desktop\\总文件夹\\文档01.txt’)

#———————————————————————————————————————————————————————-

#重命名文件: 把目录 C:\\Users\\del\\Desktop\\总文件 夹下面的 文档01.txt 这个文件重新命名为:文档011.txt

#os.rename(‘C:\\Users\\del\\Desktop\\总文件夹\\文档01.txt’,’C:\\Users\\del\\Desktop\\总文件夹\\文档011.txt’)

#———————————————————————————————————————————————————————-

#获取文件属性:

#print(os.stat(‘C:\\Users\\del\\Desktop\\总文件夹\\文档01.txt’))

#os.stat_result(st_mode=33206, st_ino=34058472181990285, st_dev=3301018110, st_nlink=1, st_uid=0, st_gid=0, st_size=50, st_atime=1574778389, st_mtime=1574768166,
st_ctime=1574778374)

#属性:

#st_mode 文件模式:文件类型和文件模式位(权限)。

#st_ino inode 节点号。

#st_dev 该文件所在设备的标识符。

#st_nlink 硬链接的数量。

#st_uid 文件所有者的用户标识符。

#st_gid 文件所有者的组标识符。

#st_size 文件大小(以字节为单位),如果是常规文件或符号链接。符号链接的大小是它所包含的路径名的长度,而不是终止的空字节。

#时间戳:

#st_atime 最近访问的时间以秒表示。

#st_mtime 最近的内容修改时间以秒表示。

#st_ctime 取决于平台:

#Unix上最新的元数据更改时间, 在Windows上创建的时间,以秒表示。 st_atime_ns 最近访问的时间以纳秒表示,以整数表示。

#st_mtime_ns 最新内容修改的时间以纳秒表示,以整数表示。

#st_ctime_ns 取决于平台:

#Unix上最新的元数据更改时间, 在Windows上创建的时间,以纳秒为单位表示为整数。

#———————————————————————————————————————————————————————-

#打开一个文件,或者打开一个目录 用电脑中的相关的应用程序打开文件

#os.startfile(‘C:\\Users\\del\\Desktop\\总文件夹\\文档01.txt’)
#os.startfile(‘C:\\Users\\del\\Desktop\\总文件夹’)

#———————————————————————————————————————————————————————

#获取文件大小:

#print(os.path.getsize(‘C:\\Users\\del\\Desktop\\总文件夹\\文档01.txt’))

#执行结果:

#50

#———————————————————————————————————————————————————————

#复制文件: shutil.copyfile(“oldfile”,”newfile”),oldfile和newfile都只能是文件

#这里复制过去并取了一个新的名字

shutil.copyfile(‘C:\\Users\\del\\Desktop\\总文件夹\\文档01.txt’,’C:\\Users\\del\\Desktop\\总文件夹\\子文件夹01\\shenweiwei.txt’)

#———————————————————————————————————————————————————————

===========================================================================================================================================

===========================================================================================================================================

发表评论

表情:
评论列表 (有 0 条评论,81人围观)

还没有评论,来说两句吧...

相关阅读