python - 将列表的第一个和最后一个元素相加
问题描述
我想将列表的第一个元素和最后一个元素相加,然后排除这两个数字并再次重复该过程,直到列表中只有一个元素。像这样:
[5,4,3,2,1,6]
[11,5,5]
[16,5]
[21]
我使用了一些方法,但没有奏效。我只是一个开始学习python的计算机科学专业的学生,所以请大家帮帮我。谢谢你。
解决方案
这个答案的主要逻辑是围绕len of last list print
. 让我们分成几点:
逻辑:
1.基本上我们需要总和first-ith
和last-ith
价值,我们使用了这个代码:
l_u[-1][i] + l_u[-1][-i - 1]
2.仅当我们必须将其附加在偶数位置时才lenght of last append list
有效:even
odd-length
l_u[-1][i]
3.以上两个语句中true
的这个条件是由这个条件完成的:
len(l_u[-1])%2 != 0 and i%2 != 0
代码 :
l = [5, 4, 3, 2, 1, 6]
l_u = [l]
condn = True
j = 0
while condn:
l_u.append([
l_u[-1][i] if len(l_u[-1]) % 2 != 0 and i % 2 != 0 else l_u[-1][i] +
l_u[-1][-i - 1] for i in range(
len(l_u[-1]) // 2 if len(l_u[-1]) % 2 == 0 else len(l_u[-1]) // 2 +
1)
])
if len(l_u[-1]) <= 1:
break
print(l_u)
输出 :
[[5, 4, 3, 2, 1, 6], [11, 5, 5], [16, 5], [21]]
推荐阅读
- arrays - how to get all individual matches from a regex in perl?
- django - Django - 使用自定义用户模型进行身份验证返回无
- java - 画圈的动画
- mysql - MYSQL-how to insert geometry data
- c++ - c++ type alias not working when testing specialization
- php - 在php中将整个网站重定向到新网站的主页
- python - Merge different length dataframes, Join column in dataframe dont have unique values
- node.js - 进程崩溃:TypeError:回调不是函数
- django - 没有搜索结果 Django 2.1 Solr 6.5
- mysql - Laravel 的原始查询在哪里?