我有一个csv文件叫做新建.csv我正在尝试删除某个名为code的列中的所有前导0。你知道吗
id,name,code <br>
0,kevin,010 <br>
1,john,011 <br>
2,casey,020 <br>
3,micheal,030
这只是csv文件的一个示例,除了有近1000行之外。我只想从代码列中删除前导的0。你知道吗
我试图找到一个解决方案,我可以编辑一个完整的列为未来的参考了。例如,假设有一个要从列中删除的主角“k”。你知道吗
我在网上看到了一些例子,但并不奏效。你知道吗
这就是我们下面所说的
import pandas as pd
import sys
with open('new.csv') as infile:
title = next(infile)
infile.seek(0)
table = pd.read_csv(infile)
table.rename(columns={'Unnamed: 2':''}, inplace=True)
table['code'] = table['code'].str.replace("0", "")
sys.stdout.write(title)
table.to_csv(sys.stdout, ',', index=False)
您可以使用regex
re.sub
轻松地替换前导零。使用这个正则表达式替换为
\1
基本上是group1内容Demo
试试这些Python代码
打印不带前导零的数字
编辑:
您可以创建这种函数,它将文件名作为参数,并生成一个名为
inputfilename.out
的新文件输入文件的内容
data.txt
覆盖
data.txt
文件的内容以我为例:
输出:
注意,为了简单起见,我硬编码了txt内容。我使用str方法:
rpartition
最后分裂,
和lstrip
去除0
。你知道吗编辑:您可以将
.csv
视为纯文本文件,并使用read
获取内容,即不必硬编码txt
只需执行以下操作:在结束时,不要打印
txt
,而是执行以下操作:您应该尝试使用字符串片段删除
0
,例如:另外,如果
0
后面有一个逗号,比如:0,
,那么试着用这个来代替:相关问题 更多 >
编程相关推荐