gpt4 book ai didi

python - 是否有处理这种范围映射的 Pythonic 方式

转载 作者:太空宇宙 更新时间:2023-11-03 14:23:22 27 4
gpt4 key购买 nike

请问这可以做得更 Pythonic 吗?

if joyx > 50:
joyx = 100
elif joyx < -50:
joyx = -100
else:
joyx = 0

最佳答案

您可以使用 math.copysign 编写它和 abs功能:

In [30]: from math import copysign

In [31]: joyx = copysign(100, joyx) if abs(joyx) > 50 else 0

例子:

In [32]: joyx = lambda x: copysign(100, x) if abs(x) > 50 else 0

In [33]: joyx(51), joyx(-51), joyx(50), joyx(-50), joyx(0)
Out[33]: (100.0, -100.0, 0, 0, 0)

关于python - 是否有处理这种范围映射的 Pythonic 方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24360159/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com