python常见打开文件的方式示例详解

 更新时间:2026年02月10日 10:12:45   作者:Daydream.V  
文章介绍了Python中打开文件的两种方式open()和with open(),以及三个第三方库Pandas、NumPy和Pillow用于处理不同类型文件的读取方法,本文结合实例代码给大家介绍的非常详细,感兴趣的朋友一起看看吧

一、python自带

1.1 open()

open(file, mode,encoding)

这里的file指的是你要读取的文件,mode指的是读取方式,encoding指的是打开文件的编码方式。

注意使用此函数时需要在文件读取结束后,需要手动close

f = open('test.txt', 'r', encoding='utf-8')
content = f.read()
f.close() 

1.2 with open()(此函数不需要手动close)

with open() 的核心其实是 open() 函数

open(file, mode, encoding)

file指的是你要读取的文件,mode指的是读取方式,encoding指的是打开文件的编码方式。

with open("test.txt", "r", encoding="utf-8") as f:
    content = f.read() 
    print(content)

二、第三方库

2.1 Pandas(表格文件:CSV/Excel/TXT)

df = pd.read_csv(
    filepath_or_buffer='文件路径/URL',  
    sep=',',                         
    header=0,                        
    names=['列1', '列2', '列3'],      
    encoding='utf-8'                  
)

其中  filepath_or_buffer='文件路径/URL', 为文件路径或网络链接, sep=',', 为分隔符,默认逗号,制表符用'\t',header=0, 为表头行,无表头填None, names=['列1', '列2', '列3'],为自定义列名(header=None时用), encoding='utf-8'  为编码方式中文乱码换gbk/gb2312

import pandas as pd
df = pd.read_csv(
    # 基础参数
    filepath_or_buffer='student_scores.csv',  
    encoding='utf-8',                         
    sep=',',                                 
)

2.2 NumPy(数值文件:.npy/.txt)

np.loadtxt(fname, dtype=float, comments='#', delimiter=None, skiprows=0, usecols=None, unpack=False)

其中fname为文件路径或文件对象,dtype指定数组数据类型(默认 float),delimiter分隔符(默认空格),skiprows跳过前 N 行(如跳过表头 / 注释),usecols只读取指定列(索引),comments注释符(默认#,跳过注释行),unpack是否拆分列为独立数组(默认 False)。

arr_loadtxt = np.loadtxt(
    fname='numpy_simple.csv',
    dtype={'names': ('学号', '数学', '语文'), 'formats': ('U6', 'int', 'int')},  # 自定义结构化类型
    delimiter=',',
)

2.3 Pillow(图片文件:JPG/PNG/BMP)

PIL.Image.open(fp, mode='r', formats=None)

fp字符串 / 文件对象必选!指定图片文件路径、文件对象,或支持的网络流

mode字符串打开模式,仅支持 'r'(只读),Pillow 不支持写入模式(写入用 save()

formats列表 / None限定尝试解析的图片格式,避免 Pillow 自动检测格式出错,提升读取效率。

img = Image.open(
        fp='test_image.png',   
        mode='r',              
        formats=['PNG']        
    )

到此这篇关于python常见打开文件的方式的文章就介绍到这了,更多相关python打开文件方式内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 对numpy中轴与维度的理解

    对numpy中轴与维度的理解

    下面小编就为大家分享一篇对numpy中轴与维度的理解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-04-04
  • Python入门教程(四十一)Python的NumPy数组索引

    Python入门教程(四十一)Python的NumPy数组索引

    这篇文章主要介绍了Python入门教程(四十一)Python的NumPy数组索引,数组索引是指使用方括号([])来索引数组值,numpy提供了比常规的python序列更多的索引工具,除了按整数和切片索引之外,数组可以由整数数组索引、布尔索引及花式索引,需要的朋友可以参考下
    2023-05-05
  • Python算法中的时间复杂度问题

    Python算法中的时间复杂度问题

    时间复杂度用于度量算法的计算工作量,空间复杂度用于度量算法占用的内存空间。这篇文章主要介绍了Python算法中的时间复杂度,需要的朋友可以参考下
    2019-11-11
  • Python实现批量压缩解压文件(zip、rar)

    Python实现批量压缩解压文件(zip、rar)

    Python是一种广泛使用的编程语言,非常适合处理各种任务,包括批量解压缩文件,本文主要介绍了Python实现批量压缩解压文件,具有一定的参考价值,感兴趣的可以了解一下
    2023-09-09
  • 一文教你如何使用Python破解PDF的文本限制

    一文教你如何使用Python破解PDF的文本限制

    要解除 PDF 的文本限制,可以根据文件类型和限制原因,选择最合适的方案,本文为大家整理了一些主流方案,大家可以根据自己的需要进行选择
    2026-04-04
  • python中super()函数的理解与基本使用

    python中super()函数的理解与基本使用

    super( )函数是用来调用父类的一个方法,super( )函数还用来解决多重继承的问题,下面这篇文章主要给大家介绍了关于python中super()函数的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2021-08-08
  • Python使用django框架实现多人在线匿名聊天的小程序

    Python使用django框架实现多人在线匿名聊天的小程序

    很多网站都提供了在线匿名聊天的小功能,下面小编基于python的django框架实现一个多人在线匿名聊天的小程序,具体实现代码大家参考下本文
    2017-11-11
  • Keras 中Leaky ReLU等高级激活函数的用法

    Keras 中Leaky ReLU等高级激活函数的用法

    这篇文章主要介绍了Keras 中Leaky ReLU等高级激活函数的用法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-07-07
  • Python如何创建装饰器时保留函数元信息

    Python如何创建装饰器时保留函数元信息

    这篇文章主要介绍了Python如何创建装饰器时保留函数元信息,文中讲解非常细致,帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-08-08
  • python 把列表转化为字符串的方法

    python 把列表转化为字符串的方法

    今天小编就为大家分享一篇python 把列表转化为字符串的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-10-10

最新评论