如何在python中使用x.write(input())添加新行

时间:2018-05-03 03:27:54

标签: python file input

     with open('practice.txt','w') as x:
          text = input('enter text')
          x.write(text)

输入文字.. hello \ n world

输出..你好\ n世界

它将它作为字符串而不是换行符 为什么我的输入字符串在传递给write()时没有验证我的'\ n'字符

是否与我将input()传递给write()

有关

2 个答案:

答案 0 :(得分:1)

input()返回一个原始字符串,以便自动转义所有换行符。您可以将此转换回来自literal_eval()的{​​{1}}的文字字符串。

ast

例如:

from ast import literal_eval
with open('practice.txt','w') as x:
      text = input('enter text')
      x.write(literal_eval("'" + text + "'"))

答案 1 :(得分:0)

另一种解决方案是使用用户的多行输入,这样就不需要输入控制字符。

见这里:How to get multiline input from user