Python - 如何写入文本文件中的特定位置(列)

时间:2017-03-03 02:55:14

标签: python

我的程序中有以下字段,我想将这些字段写入特定位置或列的文本文件中, 在第1列中输入ID,在第10列中输入姓名,在第30列中输入电子邮件。

我尝试过使用,

fhand = open('test.txt','w')    
id,name,email = 1,'abc','abc@email.com'
id1,name1,email1 = 2,'adfadsfbnn','addbnn@email.com'
fhand.write('%s %10s %30s \n' %(id,name,email) )
fhand.write('%s %10s %30s \n' %(id1,name1,email1) )
fhand.close()

test.txt file contains,
1        abc                  abc@email.com 
2 adfadsfbnn               addbnn@email.com 

数据没有在正确的位置打印,我不希望字符串是正确的...我想要 字符串分别从位置10,30开始打印。非常感谢任何帮助。谢谢!

1 个答案:

答案 0 :(得分:0)

https://docs.python.org/2/library/string.html#string.Formatter

fhand = open('test.txt','w')
id,name,email = 1,'abc','abc@email.com'
id1,name1,email1 = 2,'adfadsfbnn','addbnn@email.com'
fhand.write('%s %+50s %+80s \n' % (id,name,email))
fhand.write('%s %+50s %+80s \n' % (id1,name1,email1))
fhand.close()