2017-04-05 44 views
0
list1 = ["experience","as","a","java","developer"] 
list2 = ["B","O","O","B","I"] 
list3 = ["java","developer"] 
number = 0 
print(list2) 
for i in list1: 
    for j in list3: 
     if(i!=j): 
      for l in range(number,len(list2)): 
       list2[number] = "O" 
       number += 1  
print(list2) 

這裏"B"表示「experience」,"O"表示「as」等等。Python:我需要以下程序的一些建議

預期輸出:

["O","O","O","B","I"] 

我的輸出:

["O","O","O","O","O"] 
+0

你想設置o根據該單詞是否在list3中找到,但是您多次設置多個元素,它們是list2中的ne元素。 – stark

+0

我要求(i!= j)意味着(經驗!= java)等等,如果這是真的,那麼list2索引應該替換爲「O」,而不是i [0]到j [0] – Shireesh

回答

0

如果我明白你的問題是正確的,你需要做的:

for i in range(len(list1)): 
    if list1[i] not in list3: 
     list2[i] = "O" 

print(list2) 

輸出[ '0',' 0','0','B','I']

+0

i不應該追加,實際的問題是,例如:if(i!= j)ie(experience!= java),包含b,0,0,b,i的列表應該替換爲o,o,o,b,我等 – Shireesh

+0

答案根據你最近的評論更新「如果這是真的,那麼list2索引應該替換爲」O「 – Olia