Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/324.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_List_Compare - Fatal编程技术网

Python 编辑一个列表,同时将其作为约束与另一个列表进行比较

Python 编辑一个列表,同时将其作为约束与另一个列表进行比较,python,list,compare,Python,List,Compare,我有一个包含一些文字的列表,还有一个只包含所需文字的列表,我想得到一个包含相关文字及其符号的输出,我应该如何计算这个输出?非常感谢 list=[0,-1, 2, 3, 11, 12, -13, 21, -22, 23, 31, -32, 33, 50, 20, 30] needed literals = [11, 12, 13, 21, 22, 23, 31, 32, 33] output = [11, 12, -13, 21, -22, 23, 31, -32, 33] 编辑:每个文本也

我有一个包含一些文字的列表,还有一个只包含所需文字的列表,我想得到一个包含相关文字及其符号的输出,我应该如何计算这个输出?非常感谢

list=[0,-1, 2, 3, 11, 12, -13, 21, -22, 23, 31, -32, 33, 50, 20, 30]

needed literals = [11, 12, 13, 21, 22, 23, 31, 32, 33]

output = [11, 12, -13, 21, -22, 23, 31, -32, 33]

编辑:每个文本也是一个字符串,例如:“11”、“12”等。

这很容易理解列表:

literal_list = [0, -1, 2, 3, 11, 12, -13, 21, -22, 23, 31, -32, 33, 50, 20, 30]
needed_literals = [11, 12, 13, 21, 22, 23, 31, 32, 33]
output = [n for n in literal_list if abs(n) in needed_literals]
#=> [11, 12, -13, 21, -22, 23, 31, -32, 33]
如果两个列表的元素都是字符串而不是整数,则可以在以下条件下进行转换:

output = [n for n in literal_list if str(abs(int(n))) in needed_literals]
复制品:

output = [ for i in input_list if abs(i) in needed_literals]
output = [ for i in set(input_list) if abs(i) in needed_literals]
无重复项:

output = [ for i in input_list if abs(i) in needed_literals]
output = [ for i in set(input_list) if abs(i) in needed_literals]