将奇数索引乘以2? [英] Multiply odd indices by 2?

查看:65
本文介绍了将奇数索引乘以2?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

因此,我正在编写一个函数,该函数会将列表中的奇数索引处的每个数字乘以 2 .不过我被困住了,因为我真的不知道该怎么办.

So I'm writing a function that is going to multiply each number at an odd index in a list by 2. I'm stuck though, as I really don't know how to approach it.

这是我的代码.

def produkt(pnr):
    for i in pnr:
        if i % 2 != 0:
            i = i * 2
    return pnr

例如,如果我键入 produkt([1,2,3]),我会得到 [1,2,3] ,但我希望为 [2,2,6].

If I, for example, type produkt([1,2,3]) I get [1,2,3] back but I would want it to be [2,2,6].

推荐答案

使用列表推导:

将奇数乘以2:

[x*2 if x%2 else x for x in pnr]

在澄清问题措辞后:将奇数索引处的数字乘以2:

After clarification of question wording: multiply numbers at odd indices by 2:

[x*2 if i%2 else x for i,x in enumerate(pnr)]

这篇关于将奇数索引乘以2?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆