我试图获得如下输出:
KPLR003222854-2009131105131
在一个文本文件中。我试图得出该输出的方式是这样的:
with open('Processed_Data.txt', 'r') as file_P, open('KIC_list.txt', 'w') as namelist:
nameData = []
for line in file_P:
splt_file_P = line.split()
nameData.append(splt_file_P[0])
for key in nameData:
namelist.write('\n' 'KPLR00' + "".join(str(w) for w in nameData) + '-2009131105131')
但是我遇到了一个问题,nameData 数组中的数字都同时出现在指定的输出中,而不是像上面显示的那样干净地使用 ID,输出是这样的:
KPLR00322285472138721382172198371823798123781923781237819237894676472634973256279234987-2009131105131
所以我的问题是我如何循环写入命令,以使我能够正确输出每个单独的 ID(每个 ID 都有一个特定的索引值,但有超过 150 个)。
编辑:另外,列表中的一些 ID 的长度不同,所以我想在“键”前面添加 0 以使它们都等于 9 位。我通过在引号中将 0 添加到 KPLR 中来欺骗这一点,但并非所有 ID 都只需要两个 0。问题是,我可以在 KPLR 和密钥之间添加 0 以匹配 9 位格式吗?