python - 在 Python 中,我怎样才能使列表的前 2 个元素加在一起,然后是前 4 个,然后是前 6 个,依此类推?
问题描述
我正在制作一个游戏,两名玩家轮流将数字 1 到 10 添加到运行总数中。加到100的玩家获胜。我将玩家的输入存储在一个列表中,在游戏结束时,我想在每回合后显示总数。该列表采用以下格式:
allTurns = [player1move1, player2move1, player1move2, player2move2, ...]
如何仅添加前 2 个元素并显示它们,然后仅添加前 4 个元素并显示它们,然后是前 6 个,依此类推?
解决方案
for i in range(0, len(list)):
if i % 2 == 0:
print(sum(list[:i+1]))
或者
sums = []
for i in range(0, len(list)):
if i % 2 == 0:
sums.append(sums[-1] + list[i-1] + list[i])
推荐阅读
- ios - 使用 UIAlertController 激活函数
- visual-studio - 更改 Visual Studio 2019 的默认登录浏览器
- prolog - 搜索路径是gprolog
- javascript - JQuery 验证 - 字段没有被取消突出显示
- html - 是否可以在 React 中解析包含转义字符的 HTML
- wordpress - 挂钩到 Elementor pro form 小部件的表单提交
- r - 使用 str_detect 和 dplyr 将字符串更改为更简单的文本
- sequelize.js - Sequelize 运行迁移无法添加外键约束
- javascript - 带有 onSubmit 处理程序的多步表单(纯 JavaScript)?
- python - 在 groupby 对象上迭代 value_counts() 的结果