python 文件读写找不到文件-Python 文件读写 文件和路径

1、在Windows上,使用倒斜杆作为文件夹之间的分隔符,在Linux上,使用正斜杠作为路径分隔符。在编写Python脚本时,可以os.path.join()函数来处理

在Windows环境下命令如下,返回的路径为倒斜杆,倒斜杆有两个,是因为加了转义字符

>>>

>>> import os

>>> os.path.join('usr','bin','pigwan7')

'usr\bin\pigwan7'

>>>

在Linux环境下命令,返回的路径为正斜杠

>>>

>>> import os

>>> os.path.join('usr','bin','pigwan7')

'usr/bin/pigwan7'

>>>

2、获得当前路径和改变工作路径

>>>

>>> import os

>>> os.chdir('/usr/bin')

>>> os.getcwd()

'/usr/bin'

>>> os.chdir('/root')

>>> os.getcwd()

'/root'

>>>

3、创建新文件夹

>>>

>>> os.makedirs('/home/xiaobai/study')

>>> os.chdir('/home/xiaobai/study')

>>> os.getcwd()

'/home/xiaobai/study'

>>>

4、相对路径和绝对路径

os.path.abspath(path)返回参数的绝对路径的字符串,os.path.isabs(path),返回一个布尔值,判断是否是相对路径

>>>

>>> os.path.abspath('.')

'/home/xiaobai/study'

>>> os.path.isabs('.')

False

>>>

os.path.dirname(path)返回一个字符串,包含path参数中最后一个斜杠之前的所有内容;os.path.basename(path)将返回path参数中最后一个斜杠之后的所有内容

>>>

>>> os.path.dirname('/home/xiaobai/study/test.txt')

'/home/xiaobai/study'

>>> os.path.basename('/home/xiaobai/study/test.txt')

'test.txt'

>>>

os.path.split()返回两个字符串的元组,包含路径的目录名称和基本名称

>>>

>>> os.path.split('/home/xiaobai/study/test.txt')

('/home/xiaobai/study', 'test.txt')

>>>

查看文件大小和文件夹内容

os.path.getsize(path)返回path参数中文件的字节数,下面这个例子中的文件大小为51200字节

>>>

>>> os.path.getsize('/home/xiaobai/study/test.txt')

51200

>>>

os.listdir(path)返回path参数中文件名的字符串列表,/home/xiaobai/study目录下共有3个文件

[root@client01 study]#

[root@client01 study]# pwd

/home/xiaobai/study

[root@client01 study]# ll

total 156

-rw-r--r--. 1 root root 51200 Nov 17 01:28 test1.txt

-rw-r--r--. 1 root root 51200 Nov 17 01:28 test2.txt

-rw-r--r--. 1 root root 51200 Nov 17 01:24 test.txt

[root@client01 study]#

>>>

>>> os.listdir('/home/xiaobai/study/')

['test.txt', 'test1.txt', 'test2.txt']

>>>

利用os.path.getsize(path)和os.listdir()可以计算文件夹下所有文件的大小

>>>

>>> totalSize=0

>>> for filename in os.listdir('/home/xiaobai/study/'):

... totalSize=totalSize + os.path.getsize(os.path.join('/home/xiaobai/study/',filename))

...

>>> print(totalSize)

153600

>>>

5、检测路径有效性

>>>

>>> os.path.exists('/home/xiaobai')

True

>>> os.path.isdir('/home/xiaobai')

True

>>> os.path.isfile('/home/xiaobai')

False

>>>

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值