В чем разница между символом новой строки и фактическим написанием чего-либо в новой строке?Python

Программы на Python
Ответить
Anonymous
 В чем разница между символом новой строки и фактическим написанием чего-либо в новой строке?

Сообщение Anonymous »

См. следующее:
Случай 1:

Код: Выделить всё

Hi\nHello
Случай 2:

Код: Выделить всё

Hi
Hello
Оба они находятся в текстовых файлах. Итак, я провел над ними несколько экспериментов, чтобы выяснить, есть ли между ними какие-либо различия:

Код: Выделить всё

In [1]: print("""Hi\nHello""")
Hi
Hello

In [2]: print("""Hi
...: Hello""")
Hi
Hello

In [3]: s1 = """Hi\nHello"""

In [4]: s2 = """Hi
...: Hello"""

In [5]: repr(s1)
Out[5]: "'Hi\\nHello'"

In [6]: repr(s2)
Out[6]: "'Hi\\nHello'"

In [7]: s1.split()
Out[7]: ['Hi', 'Hello']

In [8]: s2.split()
Out[8]: ['Hi', 'Hello']

In [9]: list(s1.encode("utf-8"))
Out[9]: [72, 105, 10, 72, 101, 108, 108, 111]

In [10]: list(s2.encode("utf-8"))
Out[10]: [72, 105, 10, 72, 101, 108, 108, 111]
Я не могу найти между ними никакой разницы. Теперь, если они одинаковы, то как они представлены внутри, чтобы их можно было по-разному отображать в тексте?
Обновить:
Если вы создадите текстовый файл со следующим содержимым:

Код: Выделить всё

Hi\nHello
Hi
Hello
И прочитайте:

Код: Выделить всё

In [1]: with open("newline.txt", "r") as f:
...:     data = f.read()
...:

In [2]: data
Out[2]: 'Hi\\nHello\nHi\nHello'
Тогда вы увидите разницу ( vs \n).
Но когда строки из этого файла копируются и вставляются в код, они ведут себя одинаково:

Код: Выделить всё

In [4]: """Hi\nHello
...: Hi
...: Hello"""
Out[4]: 'Hi\nHello\nHi\nHello'
Здесь они оба \n.


Подробнее здесь: https://stackoverflow.com/questions/798 ... g-somethin
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»