Другие ответы верны в том смысле, что в этом нет никакой технической разницы, но я видел одно неформальное правило стиля в паре проектов с открытым исходным кодом: двойные кавычки используются для строк, которые в конечном итоге могут быть видны пользователю (нужны они или нет) перевод), а одинарные кавычки предназначены для строк, которые относятся к функциональности самого кода (например, ключи dict, регулярные выражения, SQL).
Это, конечно, не универсальное правило (или даже кодифицированное в PEP), поэтому, как и любой другой произвольный аспект кодирования, оно сводится к локальным правилам.
Обратите внимание, что PEP 8 (который я не заметил, когда писал этот ответ) говорит :
Этот ПКП не дает рекомендации для этого. Выберите правило и придерживайтесь его. Однако, если строка содержит одинарные или двойные кавычки, используйте другой, чтобы избежать обратной косой черты в строке. Это улучшает читаемость.
Как указывает комментатор, это не обязательно противоречиво, в зависимости от того, как вы интерпретируете «правило». То, что я предлагаю, на самом деле не работает со второй половиной цитаты.
Ruby
, то на самом деле есть техническая разница между одинарными и двойными кавычками. Двойные кавычки поддерживают интерполяцию строк - одинарные кавычки анализируются как литералы.