как я могу подсчитать количество пробелов в длинном тексте, не получая «EOL во время сканирования строкового литерала»? а также, используя функцию «count», текст гласит: «Я уверен, что я не Ада, - сказала она, - потому что ее волосы уходят в такие длинные локоны, и у меня вообще нет локонов; "«EOL во время сканирования строки литерала»
ответ
Возможно, вы неправильно применили the str.count()
method (т. Е. У вас есть недопустимая строка).
s = "'I'm sure I'm not Ada,' she said, 'for her hair goes in such long ringlets, and mine doesn't go in ringlets at all;"
#If you get the same SyntaxError: EOL at this point, there is something
#wrong with the string you are inputting.
s.count(' ') #Result: 22
Во-первых, вопрос уже говорит, что он использует 'count'. Во-вторых, 'string.count' не метод, а функция, и это устаревшая функция, которая делает то же самое, что и метод' str.count', поэтому я не уверен, почему вы думаете, что переход на это поможет. – abarnert
Да, 'str.count' - это метод, как я уже сказал, а' string.count' - нет. Если вы говорите пользователю использовать тот же самый метод, который он уже использует, или говоря ему, чтобы он переключился на функцию, которая делает то же самое, я не вижу, как это поможет. – abarnert
Невозможно использовать метод неправильно, чтобы повысить это исключение. Значит, он явно что-то делает не так. Если вы не можете догадаться, что это такое, вы можете прокомментировать, проголосовать, чтобы закрыть вопрос, или опросить вопрос, но написать ответ, который не может решить проблему, не помогает. – abarnert
Эта ошибка, как и любая SyntaxError
, исходит только от анализатора.
Если вы не звоните eval
, exec
, или (в Python 2.x) input
, это означает, что строка проблемы в коде, а не на входе. Например, может быть, это что-то вроде этого:
spaces = s.count(" ')
В этом случае, у вас есть строка, которая начинается с двойной кавычки, и идет до следующего двойные кавычки. Поскольку следующей двойной кавычки нет, это синтаксическая ошибка.
Или, как Марк Рэнсом указывает, если сама строка является буквальным в вашем коде, может быть, ваш текстовый редактор разделить его на две линии:
s = "'I'm sure I'm not Ada,' she said, 'for her hair goes in such long ringlets, and
mine doesn't go in ringlets at all;"
s.count(" ")
В этом случае, опять же, у вас есть строка, начинающаяся с первой двойной кавычки, и в этой строке нет следующей двойной кавычки, так что это та же синтаксическая ошибка. (Хотя в этом случае вы даже не добираетесь до линии с count
, о которой вы жалуетесь. Вот почему исключения имеют следы: сказать вам или людям, которые пытаются вам помочь, где проблема на самом деле случилось, так что вам не придется гадать.)
Если вы являются с помощью eval
или аналогичной функции, вы просите Python лечить строку, как если бы он был код, и эта строка имеет аналогичная проблема.
Очевидное решение - не звонить eval
.
Если вы звоните input
в Python 2.x, это то же самое, что и eval(raw_input(…))
, поэтому просто измените на raw_input
.
«эта ошибка исходит только от анализатора». +1 Я этого не знал. –
@RickTeachey: ну, OP не показывал трассировку или упоминал, что тип ошибки был ['SyntaxError'] (https://docs.python.org/3/library/exceptions.html#SyntaxError), что означает вы бы действительно знали, что если вы узнали строку описания «EOL while scan» ... – abarnert
- 1. EOL во время сканирования строки литерала - Python
- 2. В python SyntaxError: EOL во время сканирования строки литерала
- 3. input() вызывает ошибку «EOL во время сканирования строки литерала»
- 4. EOL во время сканирования строки литерала/в попытке os.sys() cmd
- 5. EOL во время сканирования строки литерала Python любые указатели?
- 6. SyntaxError: EOL во время сканирования строкового литерала: TOTEM
- 7. SyntaxError: EOL во время сканирования строкового литерала - UTF-8
- 8. EOL во время сканирования строкового литерала, файл не будет запущен
- 9. EOL во время сканирования строкового литерала, синтаксическая ошибка Python Pygame?
- 10. SyntaxError: EOL во время сканирования строки буквального
- 11. EOL во время сканирования строки либерала
- 12. Ошибка EOL во время сканирования
- 13. SyntaxError: EOL во время сканирования строки literal -Python
- 14. новой строки вызывает SyntaxError: EOL во время сканирования строки буквального
- 15. SyntaxError EOL во время сканирования строка буквального
- 16. Ошибка Python - или моя глупость - EOL во время сканирования строки литерала
- 17. питон: SyntaxError: EOL во время сканирования строки буквального
- 18. Ошибка синтаксиса: EOL во время сканирования строки буквального
- 19. Я использовал python, когда эта синтаксическая ошибка возникла, что означает EOL во время сканирования литерала
- 20. Ошибка Python: EOL при сканировании строки литерала
- 21. SyntaxError: EOL во время сканирования строки буквального при использовании обратной косой черты избежать
- 22. «SyntaxError: EOL во время сканирования строки буквального» с помощью «г» префикс
- 23. «SyntaxError: EOL во время сканирования строкового литерала», когда я запускаю код python для сохранения данных в sqlite
- 24. java.util.NoSuchElementException во время сканирования файла
- 25. CGPDFScanner - символ \ x15 во время сканирования
- 26. Почему функция print() Python возвращает EOL?
- 27. Как игнорировать // NOSONAR во время сканирования?
- 28. Непрерывный цикл во время сканирования XML
- 29. Motorola MC3190 странное поведение во время сканирования
- 30. Расположение штрих-кодов во время сканирования
Пожалуйста, покажите свой код. – abarnert
Возможно ли, что все, что вы используете для текстового редактора, разбило эту строку на две строки? –