我有两个要迭代的列表:
efw = [13.882352941176457, 10.854092526690406, 94.25675675675676, 17.851739788199694, 14.63844797178131, 8.166189111747846, 5.278592375366564, 3.4129692832764347, -6.413612565445015, 11.678832116788328, 23.859649122807003, 4.545454545454564, 10.105580693815996, -3.562340966921118, -0.6684491978609763, 2.285714285714291, 8.505747126436791]
和
gini = [3.9215686274509887, 6.190476190476191, -7.733812949640296, -16.608391608391603, -13.458262350936979, 7.505518763796926, -12.884615384615394, -20.21276595744681, -19.839679358717433, -10.885608856088568, -12.891986062717764, -15.56420233463035, -12.66540642722116, -12.802768166089962, -11.336032388663975, -13.507625272331147, -1.882845188284521]
我想根据+
和-
中的值,用gini
和efw
创建两个新列表。如果gini
中的值为正,则应将+
添加到g
列表中。与e
和efw
列表相同。我尝试过:
g = []
e = []
for n in gini:
if n > 0:
g.append("+")
g.append("-")
for f in efw:
if f > 0:
e.append("+")
e.append("-")
但是对于gini
中的一些正值,有一个-
符号...为什么for循环将错误的符号附加到新列表中?
答案 0 :(得分:2)
添加else
即可解决。
g = []
e = []
for n in gini:
if n > 0:
g.append("+")
else:
g.append("-")
for f in efw:
if f > 0:
e.append("+")
else:
e.append("-")