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

如何在Python中按文件名的整数顺序读取CSV文件

解决文件按自然顺序读取的重命名方案

你遇到的是典型的字典序排序 vs 自然数字排序问题——文件名里的数字没有前导零的话,系统会把"15"当成比"149"小的字符串来排序,自然就乱了。给数字补上前导零(因为最大是999,补成3位即可),就能让系统按你想要的自然顺序读取文件了。下面给你几个不同平台的具体实现方法:


方法1:Windows PowerShell 命令

打开PowerShell,切换到你的CSV文件所在的文件夹,执行以下命令:

Get-ChildItem -Filter "Radius_*.csv" | ForEach-Object {
    $num = $_.Name -replace 'Radius_(\d+)\.csv', '$1'
    $newName = "Radius_$($num.PadLeft(3, '0')).csv"
    Rename-Item -Path $_.FullName -NewName $newName
}
  • 简单解释:
    • Get-ChildItem 筛选出所有以Radius_开头的CSV文件
    • 用正则表达式提取文件名里的数字部分
    • PadLeft(3, '0')把数字补成3位,比如15变成015,9变成009
    • Rename-Item完成重命名操作

方法2:Linux/macOS Bash 脚本

打开终端,进入文件所在目录,你可以用rename命令(部分系统可能需要先安装,比如Ubuntu用sudo apt install rename):

rename 's/Radius_(\d+)\.csv/sprintf("Radius_%03d.csv", $1)/e' Radius_*.csv

如果你的系统没有rename工具,也可以用循环实现:

for file in Radius_*.csv; do
    num=$(echo "$file" | sed -E 's/Radius_([0-9]+)\.csv/\1/')
    new_file=$(printf "Radius_%03d.csv" "$num")
    mv "$file" "$new_file"
done
  • 简单解释:
    • 提取数字后,用printf "%03d"把数字格式化为3位带前导零的字符串
    • 最后用mv命令完成重命名

方法3:Python 跨平台脚本

如果你需要跨平台的解决方案,或者想要更灵活的控制,可以写一段Python脚本:

import os

# 替换成你的CSV文件所在文件夹路径,当前目录就用"./"
folder_path = "./"

for filename in os.listdir(folder_path):
    if filename.startswith("Radius_") and filename.endswith(".csv"):
        # 提取数字部分并处理
        try:
            num_str = filename.split("_")[1].replace(".csv", "")
            num = int(num_str)
            # 生成带前导零的新文件名
            new_filename = f"Radius_{num:03d}.csv"
            # 执行重命名
            os.rename(os.path.join(folder_path, filename),
                      os.path.join(folder_path, new_filename))
        except ValueError:
            # 跳过不符合命名规则的文件,避免误操作
            continue
  • 把脚本放在文件所在目录运行即可;如果文件在其他路径,修改folder_path的值就行
  • 脚本会自动跳过不符合Radius_x.csv格式的文件,安全性更高

重要提醒

  1. 先备份文件:建议先复制一份文件到其他文件夹,测试重命名命令/脚本没问题后,再处理原文件
  2. 如果你以后会有超过999的文件,只需要把格式里的03d改成对应位数(比如4位就用04d)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.27 18:19:09