想要创建一个带有自动编号的制表符分隔文件
Want to create a tab delimited file with autonumbers
我想用 Python 创建一个制表符分隔文件,并在第一列中添加自动编号 001 - 002 - 003 - ... 到 10,在第二“列”中添加 011 - 012 - 013
我尝试创建 2 个变量,但不知道如何添加前导零部分。写入变量也会给出错误消息。
lst1 = list(range(1,10+1))
lst2 = list(range(11,20+1))
#zero_filled_number = number_str.zfill(3)
with open('numbers2.txt', 'w') as f:
# f.write('Start')
f.write((lst1) + "\t" + (lst2))
"{0:03}".format(i)
将输出左边为 0 的字符串。
例如,如果 i
是 12,它将 return 字符串 "012"
.
使用 zip
轻松配对不同的列表,当对每个值应用 zfill
并在每个
之间添加选项卡时 str.join
with open('test.txt', 'w') as f:
for row in zip(lst1, lst2):
row_str = "\t".join(str(x).zfill(3) for x in row)
f.write(row_str + "\n")
001 011
002 012
003 013
004 014
...
您建议的函数 zfill
可用于字符串。要将数字转换为字符串,请使用 str(number)。有了一些列表理解,我希望下面的例子会有所帮助:
lst1 = list(range(1,10+1))
lst1_str = [str(x).zfill(3) for x in lst1]
print(lst1_str)
输出
['001', '002', '003', '004', '005', '006', '007', '008', '009', '010']
我想用 Python 创建一个制表符分隔文件,并在第一列中添加自动编号 001 - 002 - 003 - ... 到 10,在第二“列”中添加 011 - 012 - 013 我尝试创建 2 个变量,但不知道如何添加前导零部分。写入变量也会给出错误消息。
lst1 = list(range(1,10+1))
lst2 = list(range(11,20+1))
#zero_filled_number = number_str.zfill(3)
with open('numbers2.txt', 'w') as f:
# f.write('Start')
f.write((lst1) + "\t" + (lst2))
"{0:03}".format(i)
将输出左边为 0 的字符串。
例如,如果 i
是 12,它将 return 字符串 "012"
.
使用 zip
轻松配对不同的列表,当对每个值应用 zfill
并在每个
str.join
with open('test.txt', 'w') as f:
for row in zip(lst1, lst2):
row_str = "\t".join(str(x).zfill(3) for x in row)
f.write(row_str + "\n")
001 011
002 012
003 013
004 014
...
您建议的函数 zfill
可用于字符串。要将数字转换为字符串,请使用 str(number)。有了一些列表理解,我希望下面的例子会有所帮助:
lst1 = list(range(1,10+1))
lst1_str = [str(x).zfill(3) for x in lst1]
print(lst1_str)
输出
['001', '002', '003', '004', '005', '006', '007', '008', '009', '010']