2011-11-30 56 views
2

这是从文件中的文本,并用绳子结合打印到一个新的文件综合作用的结果Python字符串问题

file = open('/home/user/facts', 'r') 
result = open('/home/user/result.txt', 'a') 
i = 1 
for line in file: 
    print >>result, "fact_text[%d] = \"%s\";"% (i, line) 
    i += 1 

出于某种原因,";是显示一个单独的行了,我不知道为什么。提前致谢。

回答

6

当使用for line in file从文件读取行时,结果字符串包含换行符。您可以使用line.strip()将其剥离。因此,您的打印声明变为:

print >>result, "fact_text[%d] = \"%s\";" % (i, line.strip()) 
+0

谢谢你解决了我的问题。我很感激帮助。 – amedeiros

1

因为line最后包含一个换行符。您可以通过执行行[: - 1]或-2来修剪它,具体取决于您是否有DOS或Unix行结尾