如何计算长文本中空格的数量而不会在扫描字符串文字时出现“EOL”?并且使用'count'函数,文本是:''我确定我不是Ada,'她说,'因为她的头发长得很长,而且我的头发根本没有卷起来; ““扫描字符串文字时的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 2014-11-21 21:05:49
是的,'str.count'是一种方法 - 正如我所说的,而'string.count'则不是。无论您是告诉用户使用他已经使用的相同方法,还是告诉他切换到执行相同操作的功能,我都看不出这会有什么帮助。 – abarnert 2014-11-21 21:10:25
您无法正确使用会引发该异常的方法。所以他显然做了一些错误的事情。如果你无法猜测其他东西是什么,你可以发表评论,投票结束问题或者降低问题的质量,但是编写一个无法解决问题的答案是没有用的。 – abarnert 2014-11-21 21:17:58
与任何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
。
如果你在Python 2.x中调用input
,那和eval(raw_input(…))
是一样的,所以只需要更改为raw_input
。
“这个错误只来自解析器”。 +1我不知道。 – 2014-11-21 21:34:06
@RickTeachey:那么,OP没有显示回溯或提到错误类型是['SyntaxError'](https://docs.python.org/3/library/exceptions.html#SyntaxError),这意味着你只有真正知道,如果你认识到“EOL while scanning”描述字符串...... – abarnert 2014-11-21 22:15:06
- 1. SyntaxError:扫描字符串文字时的EOL -Python
- 2. 的SyntaxError EOL同时扫描字符串字面
- 3. 的Python:语法错误:EOL同时扫描字符串字面
- 4. 语法错误:EOL同时扫描字符串字面
- 5. EOL而扫描字符串文字错误
- 6. EOL扫描字符串文字Python任何指针?
- 7. 当试图在Python中打印\时扫描字符串文字时出现EOL
- 8. EOL在扫描字符串文字时,文件将不会运行
- 9. Python错误 - 或者我的愚蠢 - 当扫描字符串文字时EOL
- 10. 换行符导致语法错误:EOL同时扫描字符串字面
- 11. 语法错误:EOL同时扫描字符串字面量的Python计算器
- 12. 正在扫描字符串字符串
- 13. EOL错误,同时扫描
- 14. ValueError:无效文字为int()与基数10和场合EOL时扫描字符串文字
- 15. 扫描字符串数组
- 16. 扫描字符串格式
- 17. 错误扫描字符串
- 18. 逐行扫描字符串
- 19. Javascript字符串扫描仪?
- 20. 扫描到字符串
- 21. SyntaxError:扫描字符串文字时的EOL:TOTEM
- 22. 扫描视频文本字符串?
- 23. SyntaxError:扫描字符串文字时的EOL - 为什么我的引号被忽略?
- 24. 扫描三引号字符串文字时Python - EOF
- 25. 扫描数字为字符串
- 26. ANTLR:Unicode字符扫描
- 27. 在Angularjs中扫描DOM的字符串
- 28. java比较扫描的字符串
- 29. 扫描字符串运算 - 的javascript
- 30. 扫描输入的字符串
请显示您的代码。 – abarnert 2014-11-21 21:04:43
是否有可能无论您用于文本编辑器将该字符串分成两行? – 2014-11-21 21:08:28