Edu*_*scu 2 python dictionary conditional-operator python-2.7
三元运算符非常有用,为什么它在这种特殊情况下不起作用:
c="d"
d={}
d[c]+=1 if c in d else d[c]=1
Run Code Online (Sandbox Code Playgroud)
它给:
d[c]+=1 if c in d else d[c]=1
^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)
我没有看到任何错误,因为没有三元运算符的同样的事情:
c="d"
d={}
if c in d:
d[c]+=1
else:
d[c]=1
Run Code Online (Sandbox Code Playgroud)
use*_*ica 11
三元运算符处理表达式而不是语句.作业是一种陈述.使用常规if/ else.