下面是详细讲解 Python 打开文件并获取文件相关属性的方法的完整攻略:
1. 准备工作
在打开文件之前,我们需要预先了解一些基础知识:
- 文件路径:指定文件在硬盘上的位置。可以是绝对路径(如
C:/users/admin/desktop/test.txt
)或相对路径(相对于当前脚本所在的目录)。 - 文件模式:指定打开文件的方式,包括只读、只写、追加、读写等方式。常用的模式有
r
(只读)、w
(只写,会覆盖原文件)、a
(追加)等。 - 文件编码:指定文件的字符编码,一般来说,可以使用
UTF-8
或GBK
编码打开。
了解了上述基础知识之后,可以进入下一步。
2. 使用Python打开文件
我们可以使用内置函数open()
来打开文件,并返回一个文件对象。其语法如下:
open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)
file
:要打开的文件路径(字符串类型)。mode
:打开文件的模式,默认为只读模式'r'
。buffering
:设置文件的缓冲方式。-1
表示系统默认缓冲,0
表示不缓冲,1
表示行缓冲(即每次读写时,将一行作为缓冲单元,进行读写操作)。encoding
:指定打开文件的编码方式,如'utf-8'
、'gbk'
等。默认为None
,表示使用系统默认编码。errors
:指定编解码错误处理方式,如'strict'
(默认方式,表示遇到错误会引发UnicodeError
异常)、'ignore'
(忽略错误)、'replace'
(用?
替换错误)、'xmlcharrefreplace'
(替换为HTML实体)等等。newline
:指定写入文件时的换行符。在Windows系统中,换行符为\r\n
,在Unix系统中为\n
。如果不指定,则使用系统默认换行符。closefd
:是否在文件关闭时关闭文件描述符。默认为True
,表示关闭文件描述符。opener
:可以指定一个自定义的文件打开函数。
例如,我们要打开名为test.txt
的文件并仅读取其中的内容,我们可以使用以下代码:
with open('test.txt', 'r') as f:
content = f.read()
print(content)
其中,with
语句用于自动关闭文件,避免出现文件未关闭的问题。f.read()
返回文件中所有内容的字符串。
3. 获取文件相关属性
打开文件后,我们可以获取其相关属性,包括文件大小、创建时间和修改时间等。
3.1 获取文件大小
我们可以使用内置函数os.path.getsize()
获取文件大小,其语法如下:
import os
os.path.getsize(file)
其中,file
为文件路径。
下面是一个获取文件大小的示例:
import os
file_path = 'test.txt'
file_size = os.path.getsize(file_path)
print(f'{file_path}文件大小为{file_size}字节')
3.2 获取文件创建时间和修改时间
我们可以使用内置模块os.path
中的方法来获取文件的创建时间和修改时间,其语法如下:
import os.path
import time
ctime = os.path.getctime(file_path) # 获取创建时间
mtime = os.path.getmtime(file_path) # 获取修改时间
# 转换成字符串格式
ctime_str = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(ctime))
mtime_str = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(mtime))
print(f'{file_path}的创建时间为{ctime_str},修改时间为{mtime_str}')
其中,time.strftime()
函数可将时间戳格式化为指定的字符串格式。
4. 总结
以上就是 Python 打开文件并获取文件相关属性的方法的完整攻略,我们可以通过open()
函数打开文件,通过os.path
模块获取文件的大小、创建时间和修改时间等属性。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python打开文件并获取文件相关属性的方法 - Python技术站