我的脚本要求用户交互并询问他/她的名字。我使用raw_input来展示这个功能。 我想检查用户是否提供了任何输入。 我想用空白检查输入的字符串。 目前代码如下所示:
str = raw_input("Enter your name: ")
if("" in str):
print "user din't entered anything"
上述代码部分工作,如果用户在没有任何输入的情况下按Enter键,则打印输出user din't entered anything
。
问题是,当用户输入foo bar
之类的内容时,上述代码也有效[注意foo
和bar
之间的空格。是的我知道为什么会这样。
另一种方法是检查输入的字符串的长度。如果用户没有输入任何内容,那么长度将为零。但同样的问题出现在这里。如果用户输入多个空白怎么办?长度逻辑将失败。
我该怎么做才能检查用户是否输入了任何字符串或将其留空?
在python中有什么字符串我可以做if(str == "")
任何帮助赞赏。
答案 0 :(得分:2)
value = raw_input("Enter your name: ")
if not value.strip():
print "user din't entered anything"
strip()删除尾随空格和单词之间。如果是空的空间。它删除所有
答案 1 :(得分:1)
isspace()
检查字符串是否只是空格而不需要像strip()
那样创建新的字符串对象
if(not str or str.isspace()):
print "user din't entered anything"
除此之外:str
是内置的。用你自己的变量隐藏它会导致有趣的错误