擅长:python、mysql、java
<p>您需要使用索引和增量访问列表元素:</p>
<pre><code>def modifyList(lst):
for ind, _ in enumerate(lst):
lst[ind] += 1 # access list element by index and increment
return lst
</code></pre>
<p>或者使用列表理解法,在每个元素中添加1:</p>
^{pr2}$
<p>{1>如果你不想返回一个新的列表,那就不要返回一个新的列表</p>
<pre><code>def mod_in_place(lst):
lst[:] = [ele +1 for ele in lst] # lst[:] changes the original list
</code></pre>
<p>现在只要调用传递列表的函数,就会更改传入的原始列表/对象:</p>
<pre><code>In [3]: l = [1,1]
In [4]: mod_in_place(l)
In [5]: l
Out[5]: [2, 2]
</code></pre>
<p>创建新列表/对象:</p>
<pre><code>def create_new_list(lst):
return [ele + 1 for ele in lst]
</code></pre>
<p>现在创建一个新列表,保持原始列表不变:</p>
<pre><code>In [7]: l = [1,1]
In [8]: l2 = create_new_list(l)
In [9]: l
Out[9]: [1, 1] # original list not changed
In [10]: l2
Out[10]: [2, 2]
</code></pre>
<p>{{ints>只会影响到不可变对象列表中,因此不会影响到新的对象。如果你的列表中有一个可变的对象,并且你对它进行了变异,那么这些变化将被反映出来,但是在你的代码中,你只需临时创建一个新的变量并将其丢弃。在</p>