将某些值从一个列表更改为另一个python

时间:2020-06-10 11:07:05

标签: python

我有两个列表

list1 = [1,2,3,4,5,6,'NO DATA',8,9,10]
list2 = [0,0,0,0,0,0,7,0,0,0]

所以我需要将list1中的第7个元素从list2更改为第7个元素

我需要定义这个:

for x in list1:
    if x == 'NO DATA':

需要将{{1}的x[index]list1更改为x[index]

我如何做到这一点?

所以我需要最终清单list2

4 个答案:

答案 0 :(得分:4)

一种相当简单的方法:

data:[
       {
  nr:1,
  user: [
      {
      firstName:'John',
      lastName: 'Doe'
      },
      {
      firstName:'Bill',
      lastName: 'White'
      }
       ]
       },
              {
  nr:2,
  user: [
      {
      firstName:'Carl',
      lastName: 'Doe'
      },
      {
      firstName:'Mike',
      lastName: 'Green'
      },
      {
      firstName:'Sarah',
      lastName: 'Doe'     
      }
       ]
       }, 
     ]
   ....  
     // object depend by how many fields user added in each nr

结果是:

list1 = [1,2,3,4,5,6,'NO DATA',8,9,10]
list2 = [0,0,0,0,0,0,7,0,0,0]


def get_item(x,y):
    if x == "NO DATA":
        return y
    return x

[get_item(x, y) for (x,y) in zip(list1, list2)]

答案 1 :(得分:1)

请尝试:

$var->show_foo

答案 2 :(得分:1)

list1 = [1,2,3,4,5,6,'NO DATA',8,9,10]
list2 = [0,0,0,0,0,0,7,0,0,0]

index=list1.index('NO DATA')

list3=list1[:index]+list2[index:index+1]+list1[index+1:]

答案 3 :(得分:1)

  i=0
  for a,b in zip(x,y):
     if a=='No data':
            x[i]=b
     i+=1

相关问题