You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python实现文本文件小数转整数、首列填充值并跳过前13行写入

Python批量文本处理实现方案

前置准备

  • 把所有需要处理的文本文件统一放到同一个文件夹中,避免混杂其他无关文件
  • 提前确定需要填充到第一列逗号前的指定内容(可以是数字、字符串等)
  • 处理后的文件会自动生成到新文件夹,不会修改原文件,不用担心原始数据丢失

完整可运行代码

import os

# -------------------------- 请修改以下配置参数 --------------------------
RAW_FOLDER = "raw_data"  # 存放待处理文件的文件夹名
PROCESSED_FOLDER = "processed_data"  # 存放处理后文件的文件夹名
FILL_VALUE = "你的填充值"  # 这里替换成你要填到第一列逗号前的内容,比如填"100"或者"北京"等
ROUND_DECIMAL = True  # 小数转整数是否四舍五入,填False则直接截断小数部分
# -----------------------------------------------------------------------

# 自动创建输出文件夹
if not os.path.exists(PROCESSED_FOLDER):
    os.mkdir(PROCESSED_FOLDER)

# 遍历所有待处理的txt文件
for filename in os.listdir(RAW_FOLDER):
    if not filename.endswith(".txt"):
        continue  # 跳过非txt文件
    raw_path = os.path.join(RAW_FOLDER, filename)
    processed_path = os.path.join(PROCESSED_FOLDER, filename)
    
    # 读取原文件所有行
    with open(raw_path, "r", encoding="utf-8") as f:
        lines = f.readlines()
    
    # 保留前13行完全不变
    processed_lines = lines[:13]
    
    # 处理第14行及之后的内容
    for line in lines[13:]:
        line = line.strip()
        if not line:
            processed_lines.append("\n")
            continue
        # 按逗号拆分字段
        parts = line.split(",")
        # 第一个字段替换为指定填充值
        parts[0] = FILL_VALUE
        # 处理后续字段,小数转整数
        for i in range(1, len(parts)):
            item = parts[i].strip()
            try:
                num = float(item)
                if ROUND_DECIMAL:
                    parts[i] = str(round(num))
                else:
                    parts[i] = str(int(num))
            except:
                # 非数值内容保持不变
                pass
        # 拼接回逗号分隔的行
        new_line = ",".join(parts) + "\n"
        processed_lines.append(new_line)
    
    # 写入处理后的文件
    with open(processed_path, "w", encoding="utf-8") as f:
        f.writelines(processed_lines)
    
    print(f"文件 {filename} 处理完成")

使用步骤

  1. 在和Python代码同一个目录下新建名为raw_data的文件夹,把所有待处理的txt文件放到这个文件夹里
  2. 修改代码里FILL_VALUE的取值,换成你需要填充的内容
  3. 运行代码,处理好的文件会自动生成到processed_data文件夹中

内容的提问来源于stack exchange,提问作者Sara

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.14 12:15:03