如何解决如何格式化嵌套列表理解行?
我想生成一个接收数字列表并根据列表中的值调整数字的列表推导式。
例如:
如果列表中的数字 > 255 我希望列表推导式取值 255 如果列表中的数字
我使用的代码是:
num = [260,-2,124]
adj = [[0 if (n <= 0) else 255 if (n > 255) else n in n if n in range(1,255)]] for n in num)
print(adj)
File "/Users/home/DropBox/Python_general_work/Python FB Groups/hex_converter.py",line 54
adj = [[0 if (n <= 0) else 255 if (n > 255) else n in n if n in range(1,255)]] for n in nums)
^
SyntaxError: invalid Syntax
Process finished with exit code 1
您能否建议如何构建列表理解以使其有效。
谢谢。
解决方法
markServerDown(Server)
列表推导式中不需要额外的 adj = [0 if n <= 0 else 255 if n >= 255 else n for n in num]
,因为之前的条件可以确保数字在 [1,255] 范围内。
我会使用 min
从顶部裁剪它,使用 max
从底部裁剪它:
adj = [min(255,max(0,n)) for n in num]
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。