python - 如何在Python的for循环中增加1或2

标签 python python-3.x for-loop

我已经创建了这段有效的代码,但我需要它更加通用。看看:

if (card_task_e[1] > card_task_e[2]): #Starting with 1
    ol_task_e.append(card_task_e[1])
    counte+=1
if (card_task_e[1] > card_task_e[4]):
    counte+=1
    ol_task_e.append(card_task_e[1])
if (card_task_e[1] > card_task_e[6]):
    counte+=1
    ol_task_e.append(card_task_e[1])
if (card_task_e[1] > card_task_e[8]):
    counte+=1
    ol_task_e.append(card_task_e[1])
if (card_task_e[1] > card_task_e[10]):
    counte+=1
    ol_task_e.append(card_task_e[1])
if (card_task_e[1] > card_task_e[12]):
    counte+=1
    ol_task_e.append(card_task_e[1])
if (card_task_e[3] > card_task_e[4]): #Going onto 3
    counte+=1
    ol_task_e.append(card_task_e[3])
if (card_task_e[3] > card_task_e[6]):
    counte+=1
    ol_task_e.append(card_task_e[3])
if (card_task_e[3] > card_task_e[8]):
    counte+=1
    ol_task_e.append(card_task_e[3])
if (card_task_e[3] > card_task_e[10]):
    counte+=1
    ol_task_e.append(card_task_e[3])
if (card_task_e[3] > card_task_e[12]):
    counte+=1
    ol_task_e.append(card_task_e[3])
if (card_task_e[5] > card_task_e[6]): #Going onto 5
    counte+=1
    ol_task_e.append(card_task_e[5])
if (card_task_e[5] > card_task_e[8]):
    counte+=1
    ol_task_e.append(card_task_e[5])
if (card_task_e[5] > card_task_e[10]):
    counte+=1
    ol_task_e.append(card_task_e[5])
if (card_task_e[5] > card_task_e[12]):
    counte+=1
    ol_task_e.append(card_task_e[5])
if (card_task_e[7] > card_task_e[8]): #Going onto 7
    counte+=1
    ol_task_e.append(card_task_e[7])
if (card_task_e[7] > card_task_e[10]):
    counte+=1
    ol_task_e.append(card_task_e[7])
if (card_task_e[7] > card_task_e[12]):
    counte+=1
    ol_task_e.append(card_task_e[7])
if (card_task_e[9] > card_task_e[10]): #Going onto 9
    counte+=1
    ol_task_e.append(card_task_e[9])
if (card_task_e[9] > card_task_e[12]):
    counte+=1
    ol_task_e.append(card_task_e[9])
if (card_task_e[11] > card_task_e[12]): #Finishing with 11
    counte+=1
    ol_task_e.append(card_task_e[11])

正如你所看到的,我有很多 if 条件,我觉得如果我放一个 for 循环,它可以很容易地提高效率,但我真的不知道如何在 Python 中做到这一点。

请注意,数组“card_task_e”的长度可以从低至 0 或高达 50 变化。

如果有人可以帮助我如何更好地使用 for 循环,我将不胜感激。

最佳答案

未经测试,但此的一些变体可以工作;-)

n = len(card_task_e)
for i in range(1, n, 2):
    base = card_task_e[i]
    for j in range(i+1, n, 2):
        if base > card_task_e[j]:
            counte += 1
            ol_task_e.append(base)

关于python - 如何在Python的for循环中增加1或2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50708813/

相关文章:

python - 尝试将具有两个序列的嵌套循环转换为 lambda

python - 从 url 加载压缩 (.gz) .csv 文件时出现问题

python-3.x - PyMySQL 代码 Windows 10 Python 3.5.0 中的连接错误?

python - 如何将文本文件的多行作为字典中键的值(在元组中)?

javascript - 在 for 循环中向回调函数添加参数

powershell - 在 for-each 循环中对字符串进行条件格式化

python - 如何在 Python setuptools 中包含本地化消息?

python - 在至少 7 天内连续三天登录该产品的用户

python - 我已经设置了 RNG 和继续按钮,但继续后不会更新结果

java - 为矩阵上的随机元素设置值