10行Python代码实现TXT转CSV一键转换

 更新时间:2026年05月18日 09:37:09   作者:做科研的周师兄  
本文提供了一段Python代码,用于解决TXT转CSV过程中可能遇到的乱码、分隔符设置错误、空行干扰和表头丢失等问题,代码简洁高效,适合科研和办公使用,无需深入理解Python语法,只需修改文件路径和分隔符设置即可完成转换,需要的朋友可以参考下

你是不是也经常遇到这些糟心事:拿到一堆 TXT 格式的实验数据、GIS 点数据、传感器监测数据,想导入 Excel/SPSS/ArcGIS 分析,却被乱码、分隔符不对、空行干扰 搞得心态爆炸?

手动改格式?数据量小还能凑活,几百上千行数据直接劝退;用 Excel 导入向导?步骤繁琐还容易丢表头,换个文件又要重新设置一遍。今天给大家分享一段我 日常科研中高频使用的 Python 代码,仅需 10 行核心代码,一键搞定 TXT 转 CSV,完美解决上述所有痛点,新手也能零门槛上手,看完就能复刻!

一、先聊痛点:你是不是也踩过这些坑?

处理 TXT 转 CSV 的过程中,90% 的人会遇到这 3 个核心问题:

  • 乱码重灾区:用 Excel 直接打开转换后的 CSV,中文表头 / 内容变成 “????”,改编码改到怀疑人生;
  • 分隔符踩坑:TXT 数据有的用逗号分隔、有的用分号、有的用空格,分隔符设错直接读成一列,数据全乱;
  • 空行搞破坏:原始 TXT 数据里夹杂空行,读取后出现大量 NaN 值,后续分析还要手动清理;
  • 表头丢失:转换后表头变成第一行数据,导致数据维度错乱,统计分析全错。

针对这些痛点,我整理了一套 “懒人友好型” TXT 转 CSV 代码,只需修改 2 行路径,剩下的交给代码,全程无需懂复杂语法,新手也能 1 分钟搞定!

二、核心优势:为什么这套代码值得收藏?

零门槛使用:只需改 2 行路径,复制粘贴就能跑,不用懂 Python 底层逻辑;

解决乱码顽疾:专门适配 Excel 的编码格式,打开绝对无乱码;

适配各类分隔符:逗号、分号、制表符都能兼容,改一个参数就行;

自动清理空行:原始 TXT 有空白行?代码自动跳过,无需手动删;

保留完整表头:第一行表头原样保留,数据维度不跑偏;

可视化验证:转换完成后自动输出数据行数 / 列数 / 表头,直观确认是否转换成功。

三、完整可运行代码(直接复制用)

先上完整代码,大家可以先收藏,后面逐行拆解核心逻辑:

# -*- coding: utf-8 -*-
"""
Created on Mon Jan 19 18:11:27 2026
@author: 做科研的周师兄
"""

import pandas as pd

# ====================== 只需修改这2行路径 ======================
txt_file_path = r"L:\ML\train\point\IntptRtP.txt"  # 你的txt文件完整路径
csv_save_path = r"L:\ML\train\point\IntptRtP.csv"  # 生成的csv保存路径
# ==============================================================

# 核心转换:分隔符设为分号(若实际是逗号,把 sep=';' 改成 sep=',' 即可)
df = pd.read_csv(
    txt_file_path,
    sep=',',                # 关键:指定分隔符为分号
    header=0,               # 关键:第一行是表头,自动识别表头
    encoding='utf-8',       # 编码:Windows可选gbk,乱码时替换
    skip_blank_lines=True   # 自动跳过空行
)

# 保存为CSV(保留表头,Excel打开无乱码)
df.to_csv(csv_save_path, index=False, encoding='utf_8_sig')

print("✅ 转换完成!")
print(f"📄 输入文件:{txt_file_path}")
print(f"📄 输出文件:{csv_save_path}")
print(f"📊 数据结构:{df.shape[0]}行 × {df.shape[1]}列(表头:{list(df.columns)})")

四、逐行拆解:核心代码为什么这么写?

很多新手怕改参数出错,我把每一行的核心逻辑讲透,让你不仅会用,还知道为什么这么用:

1. 环境准备(基础中的基础)

import pandas as pd
  • 作用:导入 Python 数据分析神器 pandas 库,它是处理文本 / 表格数据的 “天花板”,比原生 Python 快 10 倍以上;
  • 安装:如果提示 “找不到 pandas”,打开 cmd / 终端输入 pip install pandas 即可,30 秒安装完成。

2. 路径设置(唯一需要手动改的地方)

txt_file_path = r"L:\ML\train\point\IntptRtP.txt"
csv_save_path = r"L:\ML\train\point\IntptRtP.csv"
  • 关键:路径前加 r 表示 “原始字符串”,避免路径中的反斜杠 \ 被 Python 识别为转义字符(比如 \n 会被当成换行);
  • 示例:如果你的 TXT 文件在桌面,路径可以写 r"C:\Users\你的名字\Desktop\数据.txt"

3. 核心读取:解决分隔符 / 空行 / 表头问题

df = pd.read_csv(
    txt_file_path,
    sep=',',                # 分隔符:根据你的TXT改(,/;/\t/空格)
    header=0,               # 表头:0表示第一行是表头,无表头则设为None
    encoding='utf-8',       # 读取编码:乱码就换成gbk(Windows默认)
    skip_blank_lines=True   # 自动跳过空行,避免读取到NaN值
)

pd.read_csv()不仅能读 CSV,更是解析结构化 TXT 的利器,重点参数解读:• sep:分隔符,是 TXT 解析的核心!如果你的 TXT 用分号分隔,就改成sep=';';用制表符分隔则改sep='\t',这一步错了会导致列混乱;• header=0:告诉 pandas “第一行是表头”,解析后会自动将表头设为列名,无需手动处理;• encoding='utf-8':解决中文乱码的基础配置,Windows 系统如果仍乱码,换成encoding='gbk'即可;• skip_blank_lines=True:自动过滤 TXT 中的空行,避免生成多余的空行数据。

4. 保存为 CSV—— 避免 Excel 乱码

df.to_csv(csv_save_path, index=False, encoding='utf_8_sig')
保存环节的 2 个关键避坑点:• index=False:不保存 pandas 默认的行索引(比如 0、1、2...),只保留原始数据,否则 Excel 打开会多一列无用数据;• encoding='utf_8_sig':这是解决 “CSV 用 Excel 打开中文乱码” 的终极方案!比单纯的utf-8多了 BOM 头,完美适配 Excel。

5. 输出提示信息 —— 可视化转换结果

print("✅ 转换完成!")
print(f"📄 输入文件:{txt_file_path}")
print(f"📄 输出文件:{csv_save_path}")
print(f"📊 数据结构:{df.shape[0]}行 × {df.shape[1]}列(表头:{list(df.columns)})")

贴心的提示信息,让你一眼知道:• 转换是否成功;• 输入 / 输出文件的具体路径;• 数据的行数、列数,以及表头名称,快速验证数据是否解析正确。

# -*- coding: utf-8 -*-
"""
做科研的周师兄:
TXT转CSV一键工具
适用场景:科研数据、结构化TXT批量转换,解决乱码/空行/分隔符问题
"""

import pandas as pd

# ====================== 只需修改这2行路径 ======================
txt_file_path = r"L:\ML\train\IntptRtP.txt"  # 你的txt文件完整路径
csv_save_path = r"L:\ML\train\IntptRtP.csv"  # 生成的csv保存路径
# ==============================================================

# 核心转换:按需调整sep分隔符即可
df = pd.read_csv(
    txt_file_path,
    sep=',',                # 关键:根据TXT实际分隔符改(; / \t / 空格等)
    header=0,               # 第一行作为表头
    encoding='utf-8',       # 乱码时替换为gbk(Windows)
    skip_blank_lines=True   # 自动跳过空行
)

# 保存为CSV(Excel打开无乱码)
df.to_csv(csv_save_path, index=False, encoding='utf_8_sig')

# 输出转换结果提示
print("✅ 转换完成!")
print(f"📄 输入文件:{txt_file_path}")
print(f"📄 输出文件:{csv_save_path}")
print(f"📊 数据结构:{df.shape[0]}行 × {df.shape[1]}列(表头:{list(df.columns)})")

五、新手快速上手

步骤1. 安装 pandas(如果没装):打开 cmd / 终端,执行pip install pandas;2. 修改路径:把代码中txt_file_path和csv_save_path改成你自己的文件路径;3. 调整分隔符:打开你的 TXT 文件,看数据是用逗号、分号还是制表符分隔,对应修改sep参数;4. 运行代码:直接运行,控制台会输出转换结果,去指定路径找 CSV 文件即可。

六、常见问题解决(避坑!)

1. 中文乱码:◦ 先试encoding='gbk'(Windows 系统多数情况适用);◦ 保存 CSV 时必须用utf_8_sig,而非utf-8;

2. 列数不对 / 数据挤在一列:◦ 99% 是sep分隔符设置错误,打开 TXT 文件确认分隔符(比如是分号就改sep=';');

3. 空行太多:代码已默认skip_blank_lines=True,无需额外处理;

4. 表头丢失:检查header=0是否设置,若 TXT 无表头,改成header=None即可。

七、总结这段代码的核心优势:

1. 极简易用:新手只需改 2 行路径,无需懂复杂语法;

2. 避坑全面:解决了乱码、空行、分隔符、索引多余等 90% 的常见问题;

3. 可视化反馈:转换后输出数据维度和表头,快速验证结果。不管是科研数据处理、日常办公数据转换,还是批量处理多个 TXT 文件(只需加个循环即可扩展),这段代码都能极大提升效率。

如果有其他问题,欢迎在评论区留言,一起交流优化!(别忘了点赞 + 收藏,下次需要转格式时直接抄作业~)

关键点回顾

1. pd.read_csv()是解析结构化 TXT 的核心,sep分隔符是解析正确的关键;

2. 保存 CSV 时用encoding='utf_8_sig'可彻底解决 Excel 中文乱码;

3. 路径前加r避免 Windows 系统转义字符问题,新手只需改路径即可上手。

以上就是10行Python代码实现TXT转CSV一键转换的详细内容,更多关于Python TXT转CSV的资料请关注脚本之家其它相关文章!

相关文章

  • Python海象运算符代码分析及知识点总结

    Python海象运算符代码分析及知识点总结

    在本篇内容里小编给大家总结了关于Python海象运算符的使用的相关内容及代码,有兴趣的朋友们跟着学习下。
    2022-11-11
  • Python基于PyQt5和openpyxl实现Excel单元格合并工具

    Python基于PyQt5和openpyxl实现Excel单元格合并工具

    本文介绍了基于PyQt5和openpyxl的图形化界面工具,用于合并Excel文件中指定列的相同内容单元格,工具提供了文件选择、工作表选择、合并设置、合并执行和输出控制等功能,需要的朋友可以参考下
    2025-11-11
  • 对python生成业务报表的实例详解

    对python生成业务报表的实例详解

    今天小编就为大家分享一篇对python生成业务报表的实例详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-02-02
  • python能否java成为主流语言吗

    python能否java成为主流语言吗

    在本篇文章里小编给大家分享的是一篇关于python能否java成为主流语言的相关知识点,有兴趣的朋友们参考下。
    2020-06-06
  • Python递归实现汉诺塔算法示例

    Python递归实现汉诺塔算法示例

    这篇文章主要介绍了Python递归实现汉诺塔算法,结合实例形式分析了汉诺塔算法的原理、实现步骤与相关操作技巧,需要的朋友可以参考下
    2018-03-03
  • 详解Python3除法之真除法、截断除法和下取整对比

    详解Python3除法之真除法、截断除法和下取整对比

    这篇文章主要介绍了详解Python3除法之真除法、截断除法和下取整对比,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-05-05
  • python将文本转换成图片输出的方法

    python将文本转换成图片输出的方法

    这篇文章主要介绍了python将文本转换成图片输出的方法,涉及Python操作文本及图片的相关技巧,非常具有实用价值,需要的朋友可以参考下
    2015-04-04
  • pandas分别写入excel的不同sheet方法

    pandas分别写入excel的不同sheet方法

    今天小编就为大家分享一篇pandas分别写入excel的不同sheet方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • pyhon如何把程序打包为whl

    pyhon如何把程序打包为whl

    这篇文章主要介绍了pyhon如何把程序打包为whl问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • Python实现解析命令行参数的常见方法总结

    Python实现解析命令行参数的常见方法总结

    除ide的执行方式外,命令行的方式执行Python脚本是参数化程序执行的一种常见且简单的方法。本文总结了三个常见的获取和解析命令行参数的方法,需要的可以参考一下
    2022-10-10

最新评论