回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我有一个清单:</p>
<pre><code>k_list = [(1,2,3,['a','b','c']), (4,5,6,['d','e','f']), (7,8,9,['g','h','i'])]
</code></pre>
<p>要合并每个元组的子列表,如:</p>
<pre><code>[(1, 2, 3, 'a', 'b', 'c'), (4, 5, 6, 'd', 'e', 'f'), (7, 8, 9, 'g', 'h', 'i')]
</code></pre>
<p>或者</p>
<pre><code>[[1, 2, 3, 'a', 'b', 'c'], [4, 5, 6, 'd', 'e', 'f'], [7, 8, 9, 'g', 'h', 'i']]
</code></pre>
<p>我提出了以下解决方案:</p>
<pre><code>new_list =[]
def removeNesting(nest):
for e in nest:
if type(e) == list:
removeNesting(e)
else:
output.append(e)
return output
for i in k_list:
output = []
new_list.append(removeNesting(i))
print new_list
</code></pre>
<p>但我觉得这不是一个理想的解决方案,所以尝试了不使用函数的方法,当列表中没有整数时,下面的代码可以正常工作:</p>
<pre><code>new_list1 = []
for e in k_list:
total = []
for i in e:
total += i
new_list1.append(total)
print new_list1
</code></pre>
<p>但是当列表中有整数时,我在这一行得到错误:<code>total += i</code></p>
<blockquote>
<p>TypeError: 'int' object is not iterable</p>
</blockquote>
<p>如何修复?你知道吗</p>
<p>感谢您提前阅读和帮助!!你知道吗</p>