我是Python的初学者,我有一个问题:给出以下内容:
@model AvivaVozSP.Models.UserViewModel
@using System.Web.Mvc.Ajax
<form action="@Url.Action("Create", "Users")" id="form" enctype="multipart/form-data" method="post">
<div class="DvCampoUp">
@Html.DropDownListFor(m => m.user.Country_id, Model.AvailableCountries, new { @class = "StyleOb Required txtFill", @onclick = "ocultar();", @onchange = "javascript:GetState(this.value);", @id = "Country_id" })
</div>
<div class="DvCampoUp">
@Html.ValidationMessageFor(model => model.user.Country_id, "", new { @class = "text-danger" })
</div>
</form>
<script language="javascript" type="text/javascript">
$('form').submit(function (event) {
alert(1);
});
我想把它分解为传统的编码方式。我可以说它等同于:
np.asarray([self.simulate(c) for c in challenges])
谢谢。
答案 0 :(得分:4)
它不叫“pythonic looping”,而是list comprehension。
等价物是:
items = []
for c in challenges:
items.append(self.simulate(c))
nparr = np.asarray(items)
答案 1 :(得分:1)
您的方法存在的问题是您没有构建列表,例如此列表理解确实如此。相反,您只是从np.asarray
索引一个项目,而从不保存该值。此外,您甚至不想索引np.asarray
,您希望将列表传递给其构造函数。
您需要创建一个临时列表,以便在self.simulate(c)
的每次迭代中保存challenges
的返回值,并将 列表传递给np.asarray
:
temp = []
for c in challenges:
temp.append(self.simulate(c))
array = np.asarray(temp)
另外,只是为了让你知道,&#34; pythonic loop&#34;您所指的通常称为list comprehension。 &#34; Python化&#34;这只是我们Python社区成员用来描述Python语言及其理想惯用语的名称。