如何处理与另一个列表并行的列表中的项目?

时间:2017-12-28 07:05:58

标签: python python-3.6

我尝试使用以下代码以使列表k具有import android.support.v4.app.Fragment; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentTransaction; import android.support.v4.content.ContextCompat; import android.support.v7.app.AppCompatActivity; - (即没有['c','b']),但我在倒数第二行上出现语法错误。有人可以澄清我哪里出错了吗? 'x'成为列表类型而不是保留整数时引入了j1。元组j将是匹配字符串的列,稍后从XL导入,而列表M是用户输入。

m

1 个答案:

答案 0 :(得分:0)

您的问题

=是一个声明。你不能在列表理解中使用它,这是一个表达式。这条线不起作用:

k[i]= [M[1][j1] if j1 < 30 else k[j1]='']

更好的解决方案

使用字典和列表理解:

>>> M = (['A', 'B', 'C'], ['a','b', 'c']) 
... m = ['X','C','B']
... mapping = dict(zip(*M))
... k = [mapping[x] for x in m if x in mapping]
... k
...
['c', 'b']