长篇大论:
如果您没有为 str.split
指定一个字符作为分割依据,它默认为空格或制表符。我的错误是因为我的引号之间没有空格。
如果您想知道,我指定的分隔符是一个空格:
words = stuff.split(" ")
有问题的字符串是This is an example of a question.
我还尝试将 #
作为分隔符并将 #
放入我的句子中,但得到了同样的错误。
编辑:这是完整的 block
def break_words(stuff):
"""This function will break up words for us."""
words = stuff.split(" ")
return words
sentence = "This is an example of a sentence."
print break_words(sentence)
当我将其作为 py 文件运行时,它可以正常工作。
但是当我运行解释器时,导入模块,然后输入:
sentence = "这是一个句子的例子。"
接着是 print break_words(sentence)
我收到上述错误。
是的,我意识到这是多余的,我只是在玩函数。
编辑 2:这是整个回溯:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "ex25.py", line 6, in break_words
words = stuff.split(' ')
编辑 3:好吧,我不知道我做了什么不同的事情,但是当我现在再次尝试时,它成功了:
>>> s = "sdfd dfdf ffff"
>>> ex25.break_words(s)
['sdfd', 'dfdf', 'ffff']
>>> words = ex25.break_words(s)
>>>
如您所见,没有错误。
最佳答案
我在艰难地学习 Python 的这个练习中遇到了同样的问题。我只需要在引号之间放置一个空格即可。
def break_words(stuff):
"""this function will break up words."""
words = stuff.split(" ")
return words
另外,正如有人提到的,您必须重新加载模块。虽然在这个例子中,由于我在 Windows 上使用命令提示符,我不得不 exit()
然后重新启动我的 py
session 并再次导入练习。
关于python - str.split (' ' ) 给我 "ValueError: empty separator"一个字符串形式的句子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20826788/