关于python的if语句的疑问?
大家好,我是一个刚刚开始学习python的小白这个函数中的if语句我不太能理解,为什么写到一行中key就可以等于0,分开写key就要等于1呢?为什么第二次执行时就不会执行...
大家好,我是一个刚刚开始学习python的小白这个函数中的if语句我不太能理解,为什么写到一行中key就可以等于0,分开写key就要等于1呢?为什么第二次执行时就不会执行key=0了,有点想不通,望大家能帮我指点迷津.谢谢题目是count_by(['one", "two", "three"], len)key[el] = 0 if el not in key else key[el]
展开
2个回答
展开全部
因为“一行”中设置为0之后仍然会+1
但“分开写”中设置为1之后就不会再+1了
相当于一个是首条进来先记次数为0再加1,一个是首条进来直接记次数为1,结果是一样的。
但“分开写”中设置为1之后就不会再+1了
相当于一个是首条进来先记次数为0再加1,一个是首条进来直接记次数为1,结果是一样的。
追问
我可以这么理解么?也就是说key[el] = 0是if的一部分条件是么?two时就不执行if而是执行else了是么?
追答
是的,这种写法一般通称为“三目运算”,在python中也叫“条件表达式”。
x = a if m else b
等价于:
if m:
x = a
else:
x = b
附两个链接吧:
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询