Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在python列表中,如何选择正数值并相乘,否则返回相同的值而不修改列表上的顺序?_Python - Fatal编程技术网

在python列表中,如何选择正数值并相乘,否则返回相同的值而不修改列表上的顺序?

在python列表中,如何选择正数值并相乘,否则返回相同的值而不修改列表上的顺序?,python,Python,在python中的给定列表中 a=[1,-1,2,-2,3] 我想写一个循环或代码,将正数乘以2 例如,i*2表示i>0,如果i则表示i=i使用for循环,然后按如下所示进行替换 a = [1,-1,2,-2,3] for i in range(len(a)): if a[i] > 0: a[i] = a[i]*2` 这可以通过a和a完成: 此代码相当于编写: a = [1, -1, 2, -2, 3] b = [] for num in a: num *

在python中的给定列表中
a=[1,-1,2,-2,3]

我想写一个循环或代码,将正数乘以2
例如,
i*2表示i>0,如果i则表示i=i使用for循环,然后按如下所示进行替换

a = [1,-1,2,-2,3]
for i in range(len(a)):
    if a[i] > 0:
        a[i] = a[i]*2`
这可以通过a和a完成:

此代码相当于编写:

a = [1, -1, 2, -2, 3]
b = []
for num in a:
    num *= 2 if num > 0 else 1
    b.append(num)
这相当于:

a = [1, -1, 2, -2, 3]
b = []
for num in a:
    if num > 0:
        num *= 2
    b.append(num)

可能相关:
[i*2如果i>0,其他i为i在a]
谢谢懒惰的脚本谢谢你bbnumber2谢谢你Dav_做了什么
a = [1, -1, 2, -2, 3]
b = []
for num in a:
    if num > 0:
        num *= 2
    b.append(num)