python - str.split (' ' ) 给我 "ValueError: empty separator"一个字符串形式的句子

标签 python python-2.7

长篇大论: 如果您没有为 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/

相关文章:

Python导入nltk报错

Python 正则表达式错误地匹配尾随换行符

python-2.7 - 使用霍夫圆变换进行眼瞳跟踪

python - Tkinter 类中的 title() 方法和 wm_title() 方法有什么区别?

Python线程调度

python - 修改日期的主要和次要 xticks

python - 如何使用 HTTP "Host" header (使用 GoLang)定位特定的应用程序服务器

python - 使用列表理解在递归函数中创建列表列表

python - 工作线程完成后从主线程更新 Tkinter 小部件

python - 将数据写入 csv 文件时出现编码错误