将多个 write.target 行合并为一行?
我正在通过《学习Python的艰难之路》来学习Python,现在在第16个练习的学习 drill 上遇到了麻烦。我想把下面这六行代码合并成一行:
target.write(line1)
target.write("\n")
target.write(line2)
target.write("\n")
target.write(line3)
target.write("\n")
我试着这样做:
lines = line1,"\n",line2,"\n",line3,"\n"
target.write(lines)
但这似乎也不行,终端里显示:期待一个字符缓冲对象
参考了第6个练习后,我又试了这个:
lines = "%s\n%s\n%s\n" % line1,line2,line3
target.write(lines)
然后终端里显示“类型错误:格式字符串的参数不够”
我还试过:
target.write("%s,\n,%s,\n,%s,\n" % line1,line2,line3)
结果还是遇到同样的问题
4 个回答
0
我在使用 Python 2.7 的时候,这个方法对我有效。
Lines = "%s\n%s\n%s" % (Line1, Line2, Line3)
target.write(Lines)
或者
target.write("%s\n%s\n%s" % (Line1, Line2, Line3))
2
1
在编程中,有时候我们会遇到一些问题,想要找到解决方案。比如说,有人可能在使用某个工具或库时,遇到了错误或者不明白怎么用。这时候,大家会在一个叫StackOverflow的网站上提问,那里有很多程序员会分享他们的经验和解决办法。
在这个网站上,用户可以把自己的问题写出来,其他人看到后就可以给出建议或者解决方案。这样,大家就可以互相帮助,解决各种编程上的难题。
总之,StackOverflow是一个很好的地方,可以让程序员们交流和学习,特别是对于刚入门的小白来说,那里有很多有用的信息和资源。
target.write('\n'.join(lines)) #assuming all the line #s are put in a list called "lines"