0

有没有办法简化:

if x == 1 and y == 2 and z == 3:

if x == 1 and y == 1 and z == 1:

if x == 1 or y == 2 or z == 3:


if x == 1 or x == 2被简化为if x in [1, 2]:

4

1 回答 1

1

您的一个例子与其他例子不同。and形式可以很容易地简化:

if x == 1 and y == 2 and z == 3:

变成:

if (x, y, z) == (1, 2, 3):

但是,or表格不能变得更整洁。它可以重写为:

if any(a == b for a, b in zip((x, y, z), (1, 2, 3))):

但这很难“简化”

于 2014-11-29T19:58:10.503 回答