小于符号的基本Python语法错误

时间:2017-07-27 06:42:17

标签: python

嗨,我正在学习python,而且我一直在制作一个年龄计算器。

我必须制作一个年龄计算器,要求用户输入他们的年龄,如果用户是100岁或以上,它会告诉他们"你已经满100岁了!" 。否则,如果它们小于0,告诉他们"当你出生时再试一次!"。如果这两种情况都不是这样,那么计算它们变为100之前的年数并输出消息"你将在x年内完成100年!" (其中" x"被替换为100年之前的年数)。我必须使用if / elif / else语句来解决这个问题。

我花了几个小时研究,使用PEP8和我找到的东西,但仍然无法弄清楚如何解决这个问题,或者我是否在正确的轨道上。提前谢谢!

1. age = input("Enter your current age in years: ")
2. if output = <100 input("You will be 100 in years!")
3.

6 个答案:

答案 0 :(得分:2)

问题是您使用等号(=)和小于(<)并用空格分隔。你想要做的是小于或等于(<=)(按此顺序),或者你只想做小于(<)因此完全放弃等号。

答案 1 :(得分:1)

age = int(input('Enter your age'))
if age < 0:
   print("Try again when you are born!")
   exit(1)

if age > 100:
   print("You've already turned 100!")
else:
   print("You will be 100 in", str(100-age) " ,years!")

答案 2 :(得分:1)

age = int(input("Enter your current age in years: "))
if age < 100:
    output = "You will be 100 in {} years".format(100-age)
else:
    output = "You've already turned 100!"

print(output)

解释这是做什么的:

  1. 如果可能,这会将年龄转换为int,否则它是一个字符串
  2. 然后检查用户是否少于100岁(&lt;而不是=&lt;),如果是,则创建输出字符串,并使用格式化操作替换{}
  3. 否则输出字符串为&#34;您已经转为100&#34;
  4. 打印输出

答案 3 :(得分:1)

age = input('Enter your age:')
if age < 0:print("Try again when you are born!")
elif age >= 100:print("You've already turned 100!")
else:print("You will be 100 in" + str(100-age) + "years!")

答案 4 :(得分:1)

您可以按照以下流程操作:

def age_calculator(age):
    if age < 0:
        print("Try again when you are born!")
        return 0
    elif age >= 100:
        print("You've already turned 100!")
    else:
        print("You will be 100 in", str(100 - age), "Years!")

if __name__ == '__main__':
    while True:
        age = input("Enter your current age in years: ")
        try:
            age = int(age)
            break
        except:
            print("Please input an integer")
    age_calculator(age)

答案 5 :(得分:0)

{{1}}

我知道它很乱。

我很无聊。

理论上有效。

同样只是展示PEP8并不能回答这个问题。

你应该尝试从可以指导你正确的地方学习。

在这里赞成并接受好的答案(不是我的,除非它让你感到好笑)。

拜拜。

Jklol。

但不是真的。

现在再见了。