кавычка и строка в питоне - PullRequest
       20

кавычка и строка в питоне

1 голос
/ 07 сентября 2010

Я вроде как новичок в python, но я уже написал много программ, включая такие, как менеджеры загрузок, игры и текстовые редакторы, которые требуют много манипуляций со строками.одинарные или двойные кавычки ... что бы мне ни пришло в голову в то время.

Хотя я еще не сталкивался ни с какими проблемами.Мой вопрос: есть ли цель, для которой python разрешает и то, и другое или это просто для совместимости, удобства использования и т. Д.?

Ответы [ 3 ]

4 голосов
/ 07 сентября 2010

Нет никакой разницы между "string" и 'string' в Python, поэтому, как вы предлагаете, это просто для удобства использования.

>>> 'string' == "string"
True

Вы также можете использовать тройные кавычки для многострочных строк:

>>> mystring = """Hello
... World!"""
>>> mystring
'Hello\nWorld!'

Другая хитрость заключается в том, что смежные строковые литералы автоматически объединяются:

>>> mystring = "Hello" 'World!'
>>> mystring
'HelloWorld!'

Существуют также строковые префиксы, о которых вы можете прочитать в документации .

4 голосов
/ 07 сентября 2010

Это означает, что вы можете легко получить строку с , либо одинарными, либо двойными кавычками, без необходимости использования escape-символовТак что вы можете сделать:

a = 'The knights who say "ni!"'
b = "We're knights of the Round Table, we dance whene'er we're able."
1 голос
/ 07 сентября 2010

Только для совместимости и удобства использования.

Иногда полезно, когда один из них встроен в строку, поэтому я бы использовал "Who's there?" по сравнению с 'He says: "Hello"'.

Другой вариант - это, конечно, строки в тройных кавычках, например

"""This is a long string that can contain single quotations like ' or ".
It can also span multiple lines"""

, что равно

'''This is a long string that can contain single quotations like ' or ".
It can also span multiple lines'''
...