Как избежать печати обратной косой черты со специальными символами в строке

Ответы на использование

pip install --trusted-host pypi.python.org <package>

работают. Но вам нужно будет проверить, есть ли перенаправления или кеши pip. В Windows 7 с pip 9.0.1 мне пришлось запустить

pip install \
  --trusted-host pypi.python.org \
  --trusted-host pypi.org \
  --trusted-host files.pythonhosted.org \
  <package>

. Вы можете найти их с помощью подробного флага.

0
задан Georgy 13 July 2018 в 14:06
поделиться

2 ответа

Когда вы показываете переменную или напрямую вводите строку в оболочку Python, она будет обернута в одинарные кавычки.

>>> "String"    
'String'

Python избегает одиночной кавычки в вашей строке при ее отображении, потому что это завернутые в одинарные кавычки. В противном случае у вас будет что-то вроде этого, и было бы непонятно, где заканчивается строка:

'John's potato farm'

Когда вы печатаете , оно будет отображаться без кавычек вокруг него, как вы ожидали.

>>> s = "String"
>>> print(s)
String

Чтобы ответить на ваш вопрос: создайте строку точно так же, как вы ее уже делаете, и распечатайте ее.

s = "Siti's father says, \"Hello.\""
print(s)
4
ответ дан chemicalcrux 17 August 2018 в 12:41
поделиться

Существует разница между строковым представлением и содержимым строки . Всякий раз, когда вы print что-то, Python выводит содержимое строки как есть. Всякий раз, когда вы проверяете значение (например, просто набрав s в приглашении или используя repr(s)), Python предоставит вам представление значения; он пытается дать вам то, что вы можете использовать, как есть в исходном коде Python. Пример:

>>> datetime.now()
datetime.datetime(2018, 7, 13, 15, 58, 37, 162588)

Вы можете использовать datetime.datetime(2018, 7, 13, 15, 58, 37, 162588) буквально, как это, в исходном коде Python, чтобы воссоздать именно этот объект datetime.

С помощью строк он работает одинаково. Строковый литерал "Siti's father says, \"Hello\"" создает строку с содержимым Siti's father says, "Hello". Представление этой строки было бы любым из них:

  • "Siti's father says, \"Hello\""
  • 'Siti\'s father says, "Hello"'
  • '''Siti's father says, "Hello"'''
  • 'Siti\x27s father says, "Hello"'
  • множество других возможностей

Python дает вам one из этих возможных представлений, а именно с одинарной кавычкой.

4
ответ дан deceze 17 August 2018 в 12:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: