Ключ к выяснению этого здесь:
В правильно разделенных строках должен использоваться один и тот же разделитель для начального и конечного символов, и этот разделитель не должен использоваться в строке.
Вы можете проверить, что строка начинается с двойной кавычки, выполнив что-то вроде my_string[0] == '"'
, и аналогично для конца, выполнив my_string[-1] == '"'
.Это работает, потому что string [0] и string [-1] будут обращаться к первым и последним символам соответственно.Если вы не знаете, отрицательные индексы в Python просто означают начать отсчет с конца (таким образом, индекс -2 будет означать секунду с конца и т. Д.).
Затем вы можете проверить, что двойнойкавычка происходит внутри строки, делая что-то вроде этого: my_string[1:-1].count('"') == 0
.Это работает, потому что my_string [1: -1] берет часть строки, исключая первый и последний символ, а затем подсчитывает количество раз, когда двойная кавычка встречается (ноль - она никогда не должна появляться).
Но ждать!Одиночная цитата также может быть разделителем!Я оставлю это как вызов для вас.Подсказка: убедитесь, что начальный и конечный разделители совпадают, а также убедитесь, что другой разделитель встречается внутри строки.Вам также следует подумать об обработке краевых случаев со строками длиной 0 или 1 символ.Дайте мне знать, если какие-то части этого ответа не имеют смысла, или вы хотели бы получить разъяснения по поводу чего-либо.