97 0

[其他] python读写excel等数据文件方法汇总 [推广有奖]

  • 0关注
  • 0粉丝

等待验证会员

学前班

80%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
30 点
帖子
2
精华
0
在线时间
0 小时
注册时间
2018-12-27
最后登录
2018-12-27

楼主
阳光彩虹小白熊 发表于 2025-11-14 16:37:06 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币

使用 Python 处理数据文件的第一步是读取数据,涉及的主要文件类型包括文本文件(如 csv、txt 等)、Excel 文件、数据库文件以及 API。

以下是几种 Python 读取数据文件的方法:

  1. Python 内置方法(read、readline、readlines)
    • read(): 一次性加载整个文件内容。建议使用带有 size 参数的 read(size) 方法,size 值越大执行时间越长。
    • readline(): 每次读取一行内容。适用于内存不足的情况,但通常不常用。
    • readlines(): 一次性加载整个文件并按行返回列表形式,便于遍历处理。
  2. 内置模块(csv)

    Python 提供了 csv 模块来读写 csv 文件。CSV 是一种常见的数据存储格式,由逗号分隔的数据组成。此模块能够轻松处理各种规模的数据文件,但对于大数据量的操作可能需要在代码层面进行优化。

    • csv 模块读取文件
      # 读取csv文件
      import csv  
      with open('test.csv','r') as myFile:  
          lines=csv.reader(myFile)  
          for line in lines:  
              print (line)
    • csv 模块写入文件
      import csv  
      with open('test.csv','w+') as myFile:      
          myWriter=csv.writer(myFile)  
          # writerrow一行一行写入
          myWriter.writerow([7,8,9])  
          myWriter.writerow([8,'h','f'])  
          # writerow多行写入
          myList=[[1,2,3],[4,5,6]]  
          myWriter.writerows(myList)
  3. 使用 numpy 库(loadtxt、load、fromfile)
    • loadtxt 方法: 用于读取文本文件,包括 txt 和 csv 等格式的压缩文件(如 .gz 或 .bz2),要求每行的数据量必须相同。
      import numpy as np
      # loadtxt()中的dtype参数默认设置为float
      # 这里设置为str字符串便于显示
      np.loadtxt('test.csv',dtype=str)
      # out:array(['1,2,3', '4,5,6', '7,8,9'], dtype='<U5')
    • load 方法: 用于加载 numpy 专用的持久化文件,
      .npy
      以及
      .npz
      或者
      pickled
      持久化文件。
      import numpy as np
      # 先生成npy文件
      np.save('test.npy', np.array([[1, 2, 3], [4, 5, 6]]))
      # 使用load加载npy文件
      np.load('test.npy')
      '''
      out:array([[1, 2, 3],
             [4, 5, 6]])
      '''
    • fromfile 方法: 可以读取简单的文本数据或二进制数据,这些数据通常由 tofile 方法保存。在读取时,用户需要指定元素类型并调整数组的形状。
      import numpy as np
      x = np.arange(9).reshape(3,3)
      x.tofile('test.bin')
      np.fromfile('test.bin',dtype=np.int)
      # out:array([0, 1, 2, 3, 4, 5, 6, 7, 8])
  4. 使用 pandas 库(read_csv、read_excel 等)

    Pandas 是数据处理领域中最常用的分析库之一,支持读取多种格式的数据文件,通常输出为 dataframe 格式。例如:txt、csv、excel、json、剪切板内容、数据库、html、hdf、parquet、序列化文件、sas、stata 等。

    • read_csv 方法: 读取 csv 文件,输出 dataframe 格式。
      import pandas as pd
      pd.read_csv('test.csv')
    • read_excel 方法: 支持 xlsx、xls 和 xlsm 格式的 Excel 文件。
      import pandas as pd
      pd.read_excel('test.xlsx')
    • read_table 方法: 通过设置 sep 参数(分隔符)来读取任何文本文件。
    • read_json 方法: 读取 json 格式的文件。
      df = pd.DataFrame([['a', 'b'], ['c', 'd']],index=['row 1', 'row 2'],columns=['col 1', 'col 2'])
      j = df.to_json(orient='split')
      pd.read_json(j,orient='split')
    • read_html 方法: 读取 html 表格。
    • read_clipboard 方法: 读取剪切板内容。
    • read_pickle 方法: 读取序列化文件。
    • read_sql 方法: 连接数据库后,通过传递 SQL 语句来读取数据。
    • read_dhf 方法: 读取 hdf5 文件,适合处理大文件。
    • read_parquet 方法: 读取 parquet 文件。
    • read_sas 方法: 读取 sas 文件。
    • read_stata 方法: 读取 stata 文件。
    • read_gbq 方法: 读取 google bigquery 数据。
  5. 读写 Excel 文件(xlrd、xlwt、openpyxl 等)

    Python 提供了多个库来处理 Excel 文件,除了前面提到的 pandas 之外,还有 xlrd、xlwt、openpyxl 和 xlwings。

    • xlrd 库: 支持从 Excel(xls、xlsx 格式)中读取数据。
    • xlwt 库: 用于修改 Excel 文件,但不支持 xlsx 格式的文件。
    • xlutils 库: 在 xlw 和 xlrd 中使用,可以对现有文件进行修改。
    • openpyxl 库: 主要处理 xlsx 格式 Excel 文件的读取和编辑操作。
    • xlwings 库: 支持 xlsx、xls 和 xlsm 格式的文件,可以进行读写及格式修改等操作。
    • xlsxwriter 库: 用于生成 Excel 表格,包括插入数据和图表等功能,但不支持读取操作。
    • Microsoft Excel API: 需安装 pywin32,直接与 Excel 进程通信,可以执行任何在 Excel 中能完成的任务,不过速度较慢。
  6. 数据库操作(pymysql、cx_Oracle 等)

    Python 几乎支持所有类型的数据库交互。连接数据库后,可以通过 SQL 语句执行增删改查等操作。

    • pymysql 库: 用于与 MySQL 数据库进行交互。
    • sqlalchemy 库: 提供了一个 ORM 框架,支持多种数据库的交互,包括 MySQL。
    • cx_Oracle 库: 用于 Oracle 数据库的连接和操作。
    • sqlite3 内置模块: 用于与 SQLite 数据库进行交互。
    • pymssql 库: 用于 SQL Server 数据库的连接和操作。
    • pymongo 库: 用于 MongoDB 非关系型数据库的操作。
    • redis 和 pyredis 库: 用于 Redis 非关系型数据库的交互。

Pandas 学习网站:https://pandas.pydata.org/

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:python EXCEL 数据文件 xcel exce

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-5 20:23