我有一组称为mySet的两个值。看起来像这样:
mySet = {1010101, 20202030}
我有一个列表myList,其中每个行包含四个字符串。列表中的一行看起来像这样:
1 1010101 20202030 15.3
四个字符串中的每个字符串都用一个空格隔开。我想构造一个循环,如果mySet中的两个值都包含在myList的单行中,则循环将返回TRUE。我有一个想法,也许我可以只列出myList每行的第二个和第三个元素的新列表,然后对照该列表检查mySet中的值,但是我不确定如何实现它。在此先感谢您的时间。
如果“返回”是指一个函数(或任何可调用的函数),则尽管有for
循环,但您仍需要单独执行此操作,因为for
循环不会返回任何内容。
不过,这个问题可以很容易地与内置的解决any
和all
功能如下:
mySet = {str(i) for i in {1010101, 20202030}}
myList = ["1 1010101 20202030 15.3"]
result = any(all(s in l for s in mySet) for l in myList)
print(result)
它将打印True
。我们在一行中完成了所有计算。另外,请注意我如何将所有整数转换为mySet中的字符串-如果您不希望对该集合进行突变,则可能要在另一个集合中单独进行。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句