您好,我有一个随机的数字列表,您可以在其中识别出主要的数字,并且它会被它自己和其他数字分开。但是我想要那么我从操作中得到的数字有一个特定的符号,因为例如:变量a1为正,b1为负,c1为正等。 这就是我的工作:
a1 = -abs(signal1).max()
b1 = abs(signal2).max()
c1 = -abs(signal3).max()
d1 = abs(signal4).max()
e1 = -abs(signal5).max()
f1 = abs(signal6).max()
values = [a1, b1, c1, d1, e1, f1]
max_value = float(max(values, key=abs))
values = [v/max_value for v in values]
a1, b1, c1, d1, e1, f1 = values
答案 0 :(得分:2)
这是使用map的一个很好的用例:
l = [-1, 2, -3, 4, -5]
lr = map(lambda x: x * -1, l)
lr
>>[1, -2, 3, -4, 5]
答案 1 :(得分:0)
您可以遍历列表并将每个数字乘以-1。
for index in range(len(values)):
values[index] *= -1
答案 2 :(得分:0)
方法一:
map(lambda x: x * -1, values)
方法二:
[-1 * i for i in values]
答案 3 :(得分:0)
from itertools import cycle
def amp(lst):
return abs(max(lst, key=abs))
values = [amp(x)*sign for x,sign in zip([signal1, signal2, signal3, signal4, signal5, signal6], cycle([1, -1]))]
norm = float(amp(values))
values = [v/norm for v in values]