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

如何用Python在每个数字后插入空格并转换文件中的数字串?

实现连续数字字符间添加空格的方法

以下是几种简单高效的实现方式,可根据你的使用场景选择:

1. 使用sed命令(适用于Linux/macOS命令行)

直接通过sed的替换功能完成,保留原文件的空行结构:

sed 's/./& /g; s/ $//' input.txt > output.txt
  • s/./& /g:将每一个字符替换为「字符+空格」
  • s/ $//:移除行尾多余的空格
  • input.txt 是你的源文件名,output.txt 是处理后的目标文件

2. 使用awk命令(适用于Linux/macOS命令行)

awk的字符串处理同样能快速完成需求:

awk '{gsub(/./,"& "); sub(/ $/,""); print}' input.txt > output.txt
  • gsub(/./,"& "):全局替换每个字符为「字符+空格」
  • sub(/ $/,""):删除行尾的空格
  • 最后打印处理后的每一行

3. 使用Python脚本(跨平台适用)

如果需要更灵活的逻辑控制,可使用Python脚本:

with open('input.txt', 'r') as f_in, open('output.txt', 'w') as f_out:
    for line in f_in:
        # 仅移除换行符,保留空行的结构
        raw_line = line.rstrip('\n')
        if raw_line:
            # 将非空行的每个字符用空格分隔
            spaced_line = ' '.join(raw_line)
            f_out.write(spaced_line + '\n')
        else:
            # 空行直接写入
            f_out.write('\n')

运行脚本后,会生成处理好的output.txt文件。

4. 在Vim编辑器中直接修改

如果习惯用Vim编辑文件,可打开文件后执行以下命令:

:%s/./& /g
:%s/ $//
:wq
  • :%s/./& /g:全局替换所有字符为「字符+空格」
  • :%s/ $//:全局移除行尾空格
  • :wq:保存并退出Vim,原文件会被直接修改

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 04:50:29