Как включить цитату в необработанную строку Python?
>>> r"what"ever"
SyntaxError: invalid syntax
>>> r"what"ever"
'what"ever'
Итак, как мы получаем цитату, но не Слэш?
и, пожалуйста, не предлагайте r'what"ever' потому что тогда вопрос просто становится, как мы включаем оба типа кавычек?
6 ответов:
Если вы хотите использовать двойные кавычки в строках, а не одинарные кавычки, вы можете просто использовать одинарные кавычки в качестве разделителя вместо:
r'what"ever'Если вам нужны оба вида кавычек в строку, использовать тройные кавычки:
r"""what"ev'er"""Если вы хотите включить в свою строку оба вида строк с тройными кавычками (крайне маловероятный случай), вы не можете этого сделать, и вам придется использовать не необработанные строки с экранированием.
Если вам нужен какой-либо тип цитирования (одиночный, двойной и тройной для обоих), вы можете "объединить" (0) строки:
>>> raw_string_with_quotes = r'double"' r"single'" r'''double triple""" ''' r"""single triple''' """ >>> print raw_string_with_quotes double"single'double triple""" single triple'''вы также можете "объединить"(0) необработанные строки с необработанными строками:
>>> r'raw_string\n' 'non-raw string\n' 'raw_string\nnon-raw string\n'
(0): на самом деле синтаксический анализатор python соединяет строки, он не создает несколько строк. Если добавить оператор"+", то будет создано и объединено несколько строк.
Python имеет более одного способа сделать строки, следующий синтаксис строки позволит вам использовать двойные кавычки:
'''what"ever'''
somestr = """This is a string with a special need to have a " in it at the end""""вы нажмете ошибку при выполнении, потому что кавычки """" (4) в строке смущает читателя строки, так как он думает, что он уже попал в конец строки, а затем находит случайный " там. Вы можете проверить это, вставив пробел в 4 кавычки следующим образом: """" и он не будет иметь ошибки.
в этом особом случае вам нужно будет использовать:
somestr = 'This.....at the end"'или использовать описанный выше метод построения нескольких строк со смешанными "и", а затем объединить их после факта.
dqote='"' sqote="'"используйте оператор ' + ' и
dqoteиsquoteпеременные, чтобы получить то, что вам нужноесли я хочу!--4--> вы можете попробовать следующие
dqote='"' sqote="'" cmd1="sed -e s/"+dqote+",u'"+dqote+"/"+dqote+",'"+dqote+'/g -e s/^"u'+sqote+dqote+'/'+dqote+sqote+dqote+'/'
Comments