【问题标题】:Python codeacademy errorPython代码学院错误
【发布时间】:2015-05-15 19:06:44
【问题描述】:

说明:编写一个 if 语句来验证字符串是否包含字符。

添加一个 if 语句来检查 len(original) 是否大于 零。不要忘记 if 语句末尾的 :!如果 string 实际上有一些字符,打印用户的话。 否则(即 else: 语句),请打印“empty”。你会想要 多次运行代码,测试一个空字符串和一个字符串 与字符。当您确信您的代码有效时,请继续 下一个练习。

print 'Welcome to the Pig Latin Translator!'

# Start coding here!
if len(original) > 0:
    return True
else len(original) <= 0
    return False
original = raw_input("Enter a word:")

print original
print "empty"

我被卡住了,因为我不断收到以下错误。我做错了什么?

File "python", line 6
   else len(original) = 0
           ^
SyntaxError: invalid syntax

【问题讨论】:

    标签: python


    【解决方案1】:

    else 上不能有检查条件

    if len(original) > 0:
        return True
    else:
        return False
    

    所以你的完整答案应该是这样的(根据你提供的它希望你做什么的描述,不是你的方向):

    original = raw_input("Enter a word:")
    if len(original) > 0:
        print original
    else:
        print "empty"
    

    【讨论】:

      【解决方案2】:

      如果这是你的代码,它根本不会工作,因为它会在它做任何事情之前return
      你的 print original 应该替换 return True,print empty 应该替换 return False

      当然在删除该行上else 之后的所有内容(包括:)之后

      print 'Welcome to the Pig Latin Translator!'
      original = raw_input("Enter a word:")
      
      # Start coding here!
      if len(original) > 0:
          print original
      else:
          print 'empty'
      

      -- 或者--

      print 'Welcome to the Pig Latin Translator!'
      original = raw_input("Enter a word:")
      result = original if len(original) > 0 else 'empty'
      print result
      

      【讨论】:

      • @KevinDTimm 现在不要吓到他……他才刚刚开始:p
      • 抱歉,看到这些介绍三元运算符的机会,我忍不住了!
      • 哈哈@heinst 我被困在像“huh”这样的三元运算符
      • 这不是 Python 中的有效语法。正确的三元运算符是original if len(original) &gt; 0 else "empty"
      • @Navith - 差不多但不完全。我已经在帖子中修复了它。 不幸的是,这“破坏”了三元运算符,因为当你看到它时它并没有真正跳出来。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-09-21
      • 1970-01-01
      • 2021-10-25
      • 1970-01-01
      • 2016-08-17
      • 2013-02-15
      • 2015-12-06
      相关资源
      最近更新 更多