1

我对python相当陌生,我想弄清楚如何找出列表的元素是否等于给定的字符串?

lists=["a","b",'c']
str1='abc'

我知道这可能很容易,但是如果不使用字符串方法,我会很难过。

谢谢,DD

4

3 回答 3

2
>>> l = ['a', 'b', 'c']
>>> l == list('abc')
True

但是,如果列表中项目的顺序可以是任意的,则可以使用集合:

>>> l = ['c', 'b', 'a']
>>> set(l) == set('abc')
True

或者:

>>> l = ['c', 'b', 'a']
>>> s = set(l)
>>> all(c in s for c in 'abc')
True
于 2013-09-25T06:54:38.963 回答
1
>>> lists=["a","b",'c']
>>> str1='abc'
>>> ''.join(lists) == str1
True
于 2013-09-25T06:54:52.993 回答
0

您可以使用 .join 从列表中创建一个字符串:

list = ['a', 'b', 'c']
strToComapre = ''.join(list1)

现在您可以检查 strToComapre 是否“在”原始 str 中:

if strToCompare in originalStr:
    print "yes!"

如果你想要一个纯粹的比较使用:

if strToCompare == originalStr:
    print "yes! it's pure!"

python中有很多选项,我将添加一些其他有用的帖子:

将字符串与数组中的所有值进行比较

http://www.decalage.info/en/python/print_list

于 2013-09-25T07:00:15.797 回答