Python中的元组Subtract语句

使用python如果值大于256,我想从列表中的值中减去256,但我希望输出采用元组格式,这是我需要帮助的地方.

x = [85, 229, 162, 45, 280, 186, 275, 265, 252, 188, 135, 150, 351, 326, 217, 43, 301, 281, 333, 39, 246, 150, 139, 186, 195, 132, 196, 171, 307, 272, 97, 330, 271, 179, 276, 141, 151, 214, 191, 111, 261, 290, 146]

for y in x:
    if y>256:
        print y-256
    else:
        print y 

此代码将以列表格式提供正确的输出.

解决方法:

而不是打印值,将它们附加到列表:

z = []
for y in x:
    if y>256:
        z.append(y-256)
    else:
        z.append(y)

您可以像这样缩短if / else语句:

z = []
for y in x:
    z.append(y-256 if y>256 else y)

然后,您可以将所有这些行放入list comprehension

z = [y-256 if y > 256 else y for y in x]
上一篇:使用不同字段的不同顺序对python中的元组进行排序


下一篇:python – 在元组中添加元素