A = 200
B = -140
C = 400
D = -260
if A < 0:
v1 = 0
else:
v1 = A
if B < 0:
v2 = 0
else:
v2 = B
if C < 0:
v3 = 0
else:
v3 = C
if D < 0:
v4 = 0
else:
v4 = C
Run Code Online (Sandbox Code Playgroud)
上述代码结构的简写实现是什么?有没有更好/优雅/方便的方法来做到这一点?
mgi*_*son 13
A = 200
B = -140
C = 400
D = -260
v1, v2, v3, v4 = [x if x > 0 else 0 for x in (A, B, C, D)]
Run Code Online (Sandbox Code Playgroud)
如果您更喜欢将该max函数用于python三元运算符,它将如下所示:
v1, v2, v3, v4 = [max(x, 0) for x in (A, B, C, D)]
Run Code Online (Sandbox Code Playgroud)
但是,如果您计划将所有这些变量视为相同,则可能需要考虑将它们放在列表/元组中.
values = [200, -140, 400, -260]
values = [max(x, 0) for x in values]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4243 次 |
| 最近记录: |