gpt4 book ai didi

python - 用于列表理解 Python 的多个条件语句

转载 作者:太空宇宙 更新时间:2023-11-04 09:33:23 24 4
gpt4 key购买 nike

我有一个列表,其中包含我想在 2 个条件 下进行操作的元素。

一个条件是如果元素为负则将范数函数乘以 -1,或者如果元素为正则使范数函数为正。

的列表如下所示:

print(values)

-97476.70633454417
-93170.30642401175
-89901.82679086612
-87187.62533194348
-87269.09594982903
-85513.31676486236
-83545.26529198853
-82411.91255123452
-81620.01849452594

如您所见,它们都是阴性的(在这个实验中)。

代码如下所示:

norm_BIC = [(-1.0) * float(i)/max(values) for i in values if i < 0 or float(i)/max(values) for i in values if i > 0]

如果我在 or 语句之前运行代码,它会起作用:

norm_BIC = [(-1.0) * float(i)/max(values) for i in values if i < 0]

这意味着它后面的所有其他内容都不起作用,因为在 之后运行时,我得到了 norm_BIC 的空列表。

我该如何解决这个问题?

最佳答案

您似乎只是过滤掉负值并将它们变为正值。 abs 函数采用绝对值,将您的输入变为正数。

norm_BIC = [ abs(float(i))/max(values) for i in values]

没有解决您的问题?

关于python - 用于列表理解 Python 的多个条件语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54776352/

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