提问人:Anmol Virk 提问时间:5/29/2022 更新时间:11/15/2023 访问量:13143
SyntaxError:语法无效。也许你的意思是“==”或“:=”而不是“=”?:python 简写 if-else
SyntaxError: invalid syntax. Maybe you meant '==' or ':=' instead of '='? : python shorthand if-else
问:
resources = {
"water": 300,
"milk": 200,
"coffee": 100,
}
prompt = input("What would you like? (espresso, latte or cappuccino):")
if prompt == 'report':
for i in resources:
k = 'g' if i == 'coffee' else k = 'ml'
print(f'{i} : {resources[i]}')
上面提到的代码给了我错误
"k = 'g' if i == 'coffee' else k = 'ml'
^^^^^^^
SyntaxError: invalid syntax. Maybe you meant '==' or ':=' instead of '='?"
但是当我使用 print 语句而不是赋值语句时有效 喜欢
print('g') if i == 'coffee' else print('ml')
答:
4赞
Charles Duffy
5/29/2022
#1
你想要:
k = 'g' if i == 'coffee' else 'ml'
也就是说,只有一个陈述(整体);右边的所有内容都是计算结果为 either 或 的表达式,因此不能也不应该重复。k = ...
=
'g'
'ml'
k =
print('ml')
也是一个表达式(尽管计算结果为 ),因此它适用于该位置;但只是一个语句,不能在仅表达式上下文中使用。None
k = 'ml'
评论
if
if i == 'coffee': k = 'g'
else: k = 'ml'