我有一个看起来像这样的列表:
l=[0.1,0.5,2.1,3.3]
我想将这些数字中的每一个乘以连续的自然数,然后形成一个列表。例如
newlist=[1*0.1,2*0.5,3*2.1,4*3.3]
我有以下代码:
l=[0.1,0.5,2.1,3.3]
s = np.arange(1,len(l)+1)
np.multiply(l,s)
只是想知道是否存在一种不需要定义s的方法,无论是内置方法还是其他方法。
T 谢谢。
答案 0 :(得分:0)
答案 1 :(得分:0)
我认为简单的python列表理解可以有效解决您的问题。
>>> l=[0.1,0.5,2.1,3.3]
>>> l
[0.1, 0.5, 2.1, 3.3]
>>> ll = [item * val for item, val in zip(l, range(1, len(l) + 1))]
>>> ll
[0.1, 1.0, 6.300000000000001, 13.2]
答案 2 :(得分:0)
也许最“自然”的方法是通过确保$(".tree-loader").show();
$.ajax({
type : "GET",
url : "toolsList.htm",
success : function(item) {
jsd = JSON.parse(item);
$("#treeA").remove();
$(".tools-workspace-div").append("<div id='treeA'></div>");
drawTree(jsd.data);
$("#externaldrop").val(JSON.stringify(jsd.data));
treeFunctionalities(jsd.data);
$("#filter").val('');
$(".tree-loader").hide();
// $(".tree-loader").modal("hide");
$("#treeA").on('contextmenu', function (e) {
return false;
});
},
error : function(){
alert("Error in getting tools list");
$(".tree-loader").hide();
// $(".tree-loader").modal("hide");
}
});
.tree-loader {
position: fixed;
left: 0px;
right: 90%;
top: 100px;
bottom: 0px;
/* width: 100%;
height: 100%; */
z-index: 9999;
opacity: 0.5;
background: url('resources/images/Preloader_5.gif') 50% 40% no-repeat;
/* background: url('resources/images/spinner1.gif') 50% 40% no-repeat; */
}
是一个numpy数组,然后:
l
答案 3 :(得分:-1)
可能有很多方法可以做到这一点:
[a*b for a,b in zip(l,range(1,1+len(l)))]