Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.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_Python 3.x - Fatal编程技术网

Python 比较两个字符串列表并返回布尔值

Python 比较两个字符串列表并返回布尔值,python,python-3.x,Python,Python 3.x,我试图比较两个字符串列表并返回布尔值。但它总是只返回真或假 stringList = ["252.007", "546.658", "252.108"] paramValue = ["252.017", "546.658", "252.008"] def compareList(): return [x != stringList for x in paramValue] #return [x == stringList for x in paramValue] 输出应为包含

我试图比较两个字符串列表并返回布尔值。但它总是只返回真或假

stringList = ["252.007", "546.658", "252.108"]

paramValue = ["252.017", "546.658", "252.008"]

def compareList():
    return [x != stringList for x in paramValue]
   #return [x == stringList for x in paramValue]
输出应为包含以下内容的列表:

[False, True, False]
我搞不懂,也不明白,如果我使用,为什么会返回[真的,真的,真的]返回[False,False,False]如果我使用==,有人能解释一下吗

TIA

您可以使用它组合两个列表的元素,并在列表理解中比较它们

stringList = ["252.007", "546.658", "252.108"]
paramValue = ["252.017", "546.658", "252.008"]

def compareList(l1, l2):
    return [i==j for i, j in zip(l1, l2)]

print(compareList(stringList, paramValue))  # -> [False, True, False]

你想要这样的吗

def comp():
       return [stringList[i]==paramValue[i] for i in range(len(paramValue))]

使用
numpy

将numpy导入为np
stringList=np.array([“252.007”、“546.658”、“252.108”])
paramValue=np.array([“252.017”、“546.658”、“252.008”])
res=stringList==paramValue
输出:

[假-真-假]

请再加一点解释。@Netwave不要费心润色,找一个重复的,然后投票关闭。如果要将字符串与整个列表进行比较,字符串在某种程度上永远不等于列表。谢谢你的帮助。