2013-10-04 4 views
1

Я всегда смешивал эти две записи, рассматривая их как строку в Python.Python - разница между 'a' и "a"?

В чем разница между ними?

При каких обстоятельствах мы можем использовать только один из них?

+0

Нет никакой разницы, они полностью взаимозаменяемы. – BrenBarn

+0

Также проверьте соответствующую [документацию] (http://docs.python.org/2/reference/lexical_analysis.html#string-literals). – vanza

+1

Используйте одинарные кавычки. Вам понадобится меньше чернил, если вы собираетесь распечатать код. :-) – Matthias

ответ

2

Они такие же. Единственный раз, когда это имеет значение, - вам нужно избежать символа разделителя: "\"" vs '"'.

Лично я обычно использую ' для строк, которые не являются «видимыми пользователем» и " для строк, которые есть, но я не совсем согласен с этим, и я не думаю, что это обычная практика.

+0

Я действительно плохо разбираюсь в этом. У меня есть исходные файлы со смешанными кавычками повсюду ... Я недавно начал работать с linter, который жалуется каждый раз, когда я не согласен в своем цитировании, и он всегда жалуется на меня ... – mgilson

2

Нет никакой разницы: они означают одно и то же. Да, это необычно для Python ;-)

Некоторые программисты любят ставить односимвольные строки в одинарные кавычки и более длинные строки в двойных кавычках. Вероятно, привычка переносится с C. Делайте то, что вам нравится :-)

Ah: a lot more discussion here.

+2

Если вы поклонник психологии программирования, вот странность, которую я заметил много лет назад: тройные кавычки в Python, по крайней мере, от 10 до 1, записаны с двойными кавычками вместо одиночных кавычек. Что-то о том, как наши мозги подключены ;-) –

1

Они равны и зависят от ваших предпочтений

, но вы можете сделать это:

>>> print 'Double" quote inside single' 
Double" quote inside single 
>>> print "Single' quote inside double" 
Single' quote inside double 
1

Они такие же, хотя я предпочитаю использовать 'single quotes', как они легче читать

Смежные вопросы