Python - 空字符串和空格字符串之间的区别

时间:2017-06-16 18:09:49

标签: python string

据我所知,空字符串是一个长度为零的字符串。那么必须与只是空格的字符串不同吗?即使打印两者都显得相同。

我在这里阅读(Most elegant way to check if the string is empty in Python?)如何识别一个空字符串,但是在我认为是空字符串的情况下运行这段代码时,它会失败:

print("fish:", fish)

if not fish:       #if fish is empty string
    fish = weight
    print("new fish:", fish)
else:
    print("fish is not an empty string")

fish的打印输出:

fish:  

我在这里错过了一些非常简单的东西吗?或者fish确实是一串空格,这就是为什么空字符串搜索失败了?

感谢。

1 个答案:

答案 0 :(得分:1)

尝试:

print("fish:", repr(fish))

将引用输出并使用不可打印字符的转义符,以便您可以看到其中的内容。如果它不是fish: '',那它就不是空的。你也可以打印len(fish),这会给你一个长度;序列“falsy”的定义毕竟是“长度为0”。