文件自动化处理 - 学习笔记

 

1读写文件

当程序运行时,我们可以用变量来保存运算结果,而程序运行关闭后,我们可以将数据保存到文件中。本节学习的重点就是如何使用pyhton在硬盘上创建、读取和保存文件。

1.1 文件与文件路径

文件的两个属性:“路径”和“文件名”,路径指明文件在计算机上的位置,文件名是指该位置的文件的名称。

在windows上,文件夹之间使用反斜杠 '\' 作为分隔符。通常我们用`os.path.join()`函数来创建文件名称字符串。

import os
os.path.join('Datawhale\\POA', 'douc') 

# 'Datawhale\\POA\\douc'

返回的结果是('Datawhale\\POA\\douc'),看起来文件夹之间的分隔符是双反斜杠,这是因为第一个反斜杠是用来转义的。

1.2 当前工作目录

使用os.getcwd()函数可以获取当前工作目录的字符串,get current working directory。

os.getcwd()

# 'F:\\Datawhale'

 os.chdir()函数则可以改变当前工作目录,change directory。

os.chdir('F:\\Datawhale\\POA')
os.getcwd()

# 'F:\\Datawhale\\POA'

1.3 路径操作

1.3.1 绝对路径和相对路径

“绝对路径”,总是从根文件夹开始。

“相对路径”,相对于程序的当前工作目录。

相对路径中,单个句点“.”表示当前目录的缩写,两个句点“..”表示父文件夹。

将相对路径转换为绝对路径,返回绝对路径的字符串, absolute path。

os.path.abspath('.')

# 'F:\\Datawhale\\POA'

判断是否为绝对路径,返回False,is absolute?

os.path.isabs('.')

# False

os.path.isabs(os.path.abspath('.'))  

# True

1.3.2 路径操作

os.path.relpath('path', 'start'):返回开始路径到path的相对路径的字符串。

os.path.relpath(''F:\\Datawhale\\POA', 'F:\\')

# 'Datawhale\\POA'

如未指定start,则当前工作目录为start。

os.path.relpath('F:\\Datawhale\\POA')
# '.'

os.path.dirname(path): 返回当前路径的目录名。

filePath = 'F:\Datawhale\POA\\result.csv'
os.path.dirname(filePath)

# 'F:\\Datawhale\\POA'

os.path.basename(path):返回当前路径的文件名。

os.path.basename(filePath)

# 'result.csv'

os.path.split():返回一个存放路径目录名dirname和文件名basename 两个字符串的元组。

os.path.split(filePath)

# ('F:\\Datawhale\\POA', 'result.csv')

或者可以同时调用os.path.dirname()和os.path.basename,将他们的返回值放在同一个元组中。

(os.path.dirname(filePath),os.path.basename(filePath)) 

# ('F:\\Datawhale\\POA', 'result.csv')

使用split方法,以os.path.sep(路径分隔符)分割路径为每个文件夹的字符串,存放在列表中。

filePath.split(os.path.sep)

# ['F:', 'Datawhale', 'POA', 'result.csv']

 

1.3.3 路径有效性检查

os.path.exists(path):如果path所指的文件或文件夹存在,返回True,否则False。

path = 'F:\\Datawhale\\POA'
os.path.exists(path)  

# True

 os.path.isfile(path):如果path存在,且是一个文件,返回True,否则False。

os.path.isfile(path)  

# False

 os.path.isdir(path):如果path存在,且是一个文件夹,返回True,否则False。

os.path.isdir(path)  

# True

1.4 文件及文件夹操作

1.4.1 用os.makedirs()创建新文件夹

os.makedirs()可以创建所有必要的中间文件夹。

如果文件夹已存在,不会覆盖已有文件夹,会报错,若不存在,查看目录,已创建。

os.makedirs('F:\\Datawhale\\POA\\practice')

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

返回path中文件的字节数。

os.path.getsize(path)  

# 0

 返回包含path中的每个文件名字符串的列表。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值