我正在处理python中的布尔表达式问题,我试图消除变量和它的负值。我创建了两个单独的列表,但不知道如何删除相反的元素。
例如:
a = ['~A','~B','~C']
b = ['B','C']我希望输出为'~A'....我试过很多方法,但都没成功。
发布于 2020-02-27 09:56:20
您可以:
b的否定列表。例如b='B','C','~D',negations='~B','~C',‘D’a创建一个空的列表negations,如果一个项目不在中,则将它追加到ccnegations = [el.lstript("~") if el.startwith("~") else "~%s" % el for el in b]
result = [el for el in a if el not in negations]发布于 2020-02-27 09:56:23
删除否定前缀,然后检查该值是否在b中。
result = [el for el in a if el.lstrip('~') not in b]https://stackoverflow.com/questions/60425197
复制相似问题