为什么在三元运算符中收到“表达式被赋值为空”的警告?
我有一些简单的年龄分类代码,里面尝试使用三元运算符。代码是能正常运行的,但VS Code在代码下面显示了一条黄色的线,提示“表达式...没有被赋值”。我该如何去掉这个提示呢?
age = int(input("Input your age: "))
print("Teen") if age >= 15 else print("Kids") # here
print("End program")
1 个回答
1
这是因为 do_x if x else do_y
是一个表达式。通常情况下,你会想要保存这个表达式的结果。需要注意的是,使用 print()
并不是关键。你调用的任何函数都可能返回一个或多个值。在这种情况下使用三元运算符,只有在你参加“让Python变得晦涩”的比赛时才值得尝试。更简单的做法是直接这样写:
if age >= 15:
print("Teen")
else:
print("Kids")