我有实际的文件名和预期的文件名列表。我必须将匹配的两个列表的元素归档,然后将其写入CSV文件的一行。而且,必须在实际文件名的任何地方编写预期文件名列表中无与伦比的其余元素
我已经写了代码为like 如果预期文件名中的实际文件名在CSV文件的同一行中写入,否则空白。但是我需要在任何实际文件名中写入预期文件的其余元素。如果预计文件名结束,请留空。
预期文件名
['AGN_2014Q4', 'AGN_2015Q4', 'AGN_2016Q4', 'AGN_2017Q4', 'AGN_2018Q4', 'AGN_2014Q3', 'AGN_2015Q3', 'AGN_2016Q3', 'AGN_2017Q3', 'AGN_2018Q3', 'AGN_2014Q2', 'AGN_2015Q2', 'AGN_2016Q2', 'AGN_2017Q2', 'AGN_2018Q2', 'AGN_2014Q1', 'AGN_2015Q1', 'AGN_2016Q1', 'AGN_2017Q1', 'AGN_2018Q1']
实际文件名
['AGN_2016Q1', 'AGN_38', 'AGN_2014Q3', 'AGN_19', 'AGN_2017Q4', 'AGN_2018Q4', 'AGN_31', 'AGN_2018Q1','AGN_2015Q1', 'AGN_2016Q4', 'AGN_2017Q2', 'AGN_2017Q3', 'AGN_2016Q2', 'AGN_2015Q4', 'AGN_2018Q2', 'AGN_2015Q3', 'AGN_2017Q1', 'AGN_2018Q3', 'AGN_35', 'AGN_2015Q2', 'AGN_34', 'AGN_2016Q3']
结果应在CSV文件2列中(https://docs.google.com/spreadsheets/d/1cjmgiqc7bxryx91axgi7aixsgi7aixsgcjw1fb4qrlnthf9ogw/edit?usp = sharing(
两个具有相同值和不同值的列表:
>>> a = ['a', 'b', 'c', 'd']
>>> b = ['c', 'd', 'e', 'f']
首先,两个列表中的值相同:
>>> list(set(a).intersection(b))
['c', 'd']
现在,在第二个列表中在第一个且独特的唯一唯一:
>>> list(set(a) - set(b))
['b', 'a']
>>> list(set(b) - set(a))
['e', 'f']
但是,正如您所看到的那样,它会丢失顺序。您可以用a.sort()
list
排序