蟒蛇 - 检查的raw_input不是空

问题描述:

我创建了下面的代码作为在线活动的一部分上codeacademy蟒蛇 - 检查的raw_input不是空

print "Welcome to the English to Pig Latin translator!" 
original = raw_input("what's you name?") 

if original != "" and original.isalpha(): 
    print original 
else: 
    print "empty" 

,但后来它调换原有的课程看到=“”使用LEN(原创! )> 0

它们和python中的解释器一样吗?

在您的具体示例中,original != ""len(original) > 0将始终返回相同的结果,因为我们知道original将始终是一个字符串。后一种变体会慢一点,但你不会注意到。

但总体状况是在这种情况下不必要的,因为

>>> "".isalpha() 
False 

因此,你会得到相同的逻辑

if original.isalpha(): 
    print original 
else: 
    print "empty" 

然而,其结果将是不正确的,因为

>>> "1".isalpha() 
False 

更好地使用类似

if original.isalpha(): 
    print original 
elif not original: 
    print "empty" 
else: 
    print "not alpha"