Как я могу записать ‘ n’ в текстовый файл с помощью python?

#python #python-2.7

#python #python-2.7

Вопрос:

Я хочу записать ‘n’ в текстовый файл через python, но он регистрируется как новая строка.

 f=open(newpath   '/rewrite.py', 'w')
f.write('''#!/usr/bin/python
print "Content-type: text/htmln"''')
 

Я попытался обойти это и просто избежать ‘ n’, но я продолжаю получать внутренние ошибки сервера.

Комментарии:

1. Вы закрыли файл после записи в него содержимого? В случае, если вы видите какие-то ошибки, предоставьте полную трассировку ошибок.

2. Как указано в приведенных ниже ответах, \n это должно решить вашу проблему. Измените свой код на это , f=open(newpath '/rewrite.py', 'w') f.write('''#!/usr/bin/python print "Content-type: text/html\n"''')

Ответ №1:

Вы можете кодировать обратную косую черту, экранируя ее с помощью обратной косой черты, "\n" которая фактически помещает a , а затем an n в строку, тогда "n" как кодирует фактический символ новой строки.

Ответ №2:

Используйте двойную обратную косую черту, чтобы избежать этого.

Ответ №3:

Два способа:

  • Поместите двойную обратную косую черту в строку, чтобы избежать ее, например "\" , или '''\''' для тройных кавычек, которые вы используете.
  • Другой способ — поместить r перед кавычками, чтобы сделать его «необработанным» строковым литералом, который игнорирует обратную косую черту, например r"" , или r''''''

В Википедии есть хорошая иллюстрация необработанных строковых литералов Python.

Ответ №4:

 >>> f=open( './rewrite.py', 'w')
>>> f.write('''#!/usr/bin/python
... print "Content-type: text/html\n"''')
>>> f.close()

~$ cat rewrite.py
#!/usr/bin/python
print "Content-type: text/htmln"