在从.txt导入到.cs时,将列的值定义为“文本”

2024-04-24 15:37:42 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个文本文件,我需要转换成一个csv文件(到目前为止没有问题)。但是,一列有数字,当我导入文件时,数字前面的零会被删除。我需要“0”留下来。你知道吗

Req_num    P_ID   
15001      000989980

因此,我需要确保特定列的数据类型是“text”。有人对此有什么想法吗?你知道吗


Tags: 文件csvtextid数字reqnum数据类型
1条回答
网友
1楼 · 发布于 2024-04-24 15:37:42

纯Python解决方案

文件test.txt

Req_num    P_ID   
15001      000989980
0123       0054321

文件convert.py

import re

with open("test.txt", "r") as fin:
    with open("test.csv", "w") as fout:
        for line in fin.readlines():
            fout.write(", ".join(re.split("\s+", line.strip())) + "\n")

运行python convert.py后,您在test.csv中有:

Req_num, P_ID
15001, 000989980
0123, 0054321

更好的unix解决方案

文件convert.py

import re
import sys

for line in sys.stdin:
    print ", ".join(re.split("\s+", line.strip()))

现在您必须从终端运行cat test.txt | python converty.py > test.csv。你知道吗

相关问题 更多 >