比较列表中的字母和列表中的字符串

2024-04-25 09:49:38 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一张单子,比如说:

方向字母=['u'、'd'、'r'、'l'、'w'、'x'、'y'、'z']

现在我的另一个参数是arguement,我写到

udl并返回['udl']

假设另一个列表arg\u list=['udl']

我想检查u、d和l是否在此列表中,或者我想检查arg列表中我的方向字母列表中是否没有任何字母 为了使其打印错误消息,我尝试了以下方法:

    for letter in DIRECTION_LETTERS:
    for char in arg_list[4]:
        if letter in arg_list[4][0]:
            continue
        else:
            print (ERROR_MESSAGE_DIRECTIONS)
            return False


return True

Tags: in消息列表for参数return错误字母
2条回答

这条线

if letter in arg_list[4][0]:

必须是

if char in DIRECTION_LETTERS:

您需要删除for letter in DIRECTION_LETTERS:行。你知道吗

Python中有一个名为all()的方便函数,如果所有参数都为true,它将返回true。随便找一个好的使用方法,但总的来说:

>>> DIRECTION_LETTERS=['u', 'd' ,'r' , 'l', 'w', 'x', 'y', 'z']
>>> 
>>> s="udl"
>>> print(all(c in DIRECTION_LETTERS for c in s))
True
>>> s="udlxa"
>>> print(all(c in DIRECTION_LETTERS for c in s))
False

相关问题 更多 >