python中两个列表的比较

python中两个列表的比较,python,list,Python,List,我有这样一个字符串: my_string = "apple,orange,kiwi,mange" my_list_string = my_string.split(',') my_list = ["kiwi", "apple", "mange", "orange"] if len(my_list_string) == len (set(my_list) & set(my_list_string)): return True else: return False 我将其

我有这样一个字符串:

my_string = "apple,orange,kiwi,mange"
my_list_string = my_string.split(',')
my_list = ["kiwi", "apple", "mange", "orange"]
if len(my_list_string) == len (set(my_list) & set(my_list_string)):
    return True
else:
    return False
我将其拆分为以下列表:

my_list_string = my_string.split(',')
我还有第二个清单:

my_list = ["kiwi", "apple", "mange", "orange"]
在这两个列表的比较中,如果
my_list
中的所有元素都在字符串
my_String
中,我希望返回true,因此我这样做:

my_string = "apple,orange,kiwi,mange"
my_list_string = my_string.split(',')
my_list = ["kiwi", "apple", "mange", "orange"]
if len(my_list_string) == len (set(my_list) & set(my_list_string)):
    return True
else:
    return False

有没有其他方法(最简单、最优雅、最有效的方法)来进行比较?

这是最有效的方法,因为
set
s有O(1)个摊销查找

>>> my_string = "apple,orange,kiwi,mange"
>>> my_list = ["kiwi", "apple", "mange", "orange"]
>>> set(my_list).issubset(my_string.split(','))
True

这是最有效的方法,因为
set
s具有O(1)摊销查找

>>> my_string = "apple,orange,kiwi,mange"
>>> my_list = ["kiwi", "apple", "mange", "orange"]
>>> set(my_list).issubset(my_string.split(','))
True

只是另一个选项,用于检查两组之间是否存在任何差异(使用):


只是另一个选项,用于检查两组之间是否存在任何差异(使用):

有帮助吗?是的,非常有帮助(@jamylak solution):)有帮助吗?是的,非常有帮助(@jamylak solution):)