Ampere 发表于 2023-3-4 12:30:19

关于条件表达式的疑问

为什么
(n= n//2 ) if n%2==0 else (n=n*3+1)
在python中会报错呢?是条件表达式不能连接两个赋值语句吗?

isdkz 发表于 2023-3-4 12:30:20

三元表达式本来就不能连接语句,而是连接表达式(有值的)

所以应该写成:
n= n//2 if n%2==0 else n*3+1
相当于
n= (n//2 if n%2==0 else n*3+1)

只是把三元表达式的值赋给 n ,赋值并不是三元表达式的一部分

Ampere 发表于 2023-3-4 12:49:18

isdkz 发表于 2023-3-4 12:39
三元表达式本来就不能连接语句,而是连接表达式(有值的)

所以应该写成:


thank you~
页: [1]
查看完整版本: 关于条件表达式的疑问