lis中每一个偶数整数加倍

2024-04-18 18:06:42 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在将列表“a”中的每个偶数整数元素加倍,然后将结果存储回“a”中。列表'a'是一个整数列表。目前为止:

def double(item):
    if [x for x in item]%2 == 0:
        return [x * 2 for x in item]
    else:
        return [x in item]

给我这个错误:

TypeError: unsupported operand type(s) for %: 'list' and 'int'

我怎样才能把这个列表转换成int?在


Tags: in元素列表forreturnifdef错误
1条回答
网友
1楼 · 发布于 2024-04-18 18:06:42

几个问题:

  1. 条件(if)应应用于for循环(或列表理解)中item的每个元素。在
  2. 您有一个模块操作符(%)应用于列表。在
  3. [x * 2 for x in item]-这个分支将为项目中的每个数字创建一个列表。在
  4. ^{{cd7>中的{cd7}值是否为{cd6}。因此它将导致[True]或{}。在

代码:

def double(item):
    return [x if x % 2 else x * 2 for x in item]

相关问题 更多 >