Python使用布尔值为列表中的每个项目返回一个与另一个列表相同的列表

Python使用布尔值为列表中的每个项目返回一个与另一个列表相同的列表,python,list,boolean,Python,List,Boolean,我试图找到一个函数,它将计算列表中每个字符串的猜测值,并将其与答案中相同位置的字符串进行比较,如果字符串的位置相同,则在新列表中的相同位置放置字符串“b”,如果两个字符不相等,则应返回什么?这真的很难吗?反复浏览答案和猜测列表,并比较所有项目,如果项目相等,则在结果中添加一个“b”。没有比这更简单的了。不应该返回任何内容,所以列表应该是正确位置的数量+0.5,对于非常类似于python的答案,另一个+0.5,用于不解释它是如何工作的。如果OP想学习一些东西,他必须付出一些努力。但是我希望pyth

我试图找到一个函数,它将计算列表中每个字符串的猜测值,并将其与答案中相同位置的字符串进行比较,如果字符串的位置相同,则在新列表中的相同位置放置字符串“b”

,如果两个字符不相等,则应返回什么?这真的很难吗?反复浏览答案和猜测列表,并比较所有项目,如果项目相等,则在结果中添加一个“b”。没有比这更简单的了。不应该返回任何内容,所以列表应该是正确位置的数量+0.5,对于非常类似于python的答案,另一个+0.5,用于不解释它是如何工作的。如果OP想学习一些东西,他必须付出一些努力。但是我希望python在这个位置返回一个“b”列表so@Rawingzip是python的方式。如果答案[i]==guess[i]@Deka list,则在rangelenguess中为i列出“b”仅创建一个列表。你试过运行代码吗?除了我不希望python在答案不同的情况下返回任何东西。如果答案和猜测在该位置不同,则仍然返回一个无。如果答案和猜测不同,我希望python不返回任何东西。如果答案和猜测在一个位置正确,则只返回一个“b”,如果在另一个位置正确,则返回2个“b”两个位置但你也说过要在新列表中的同一位置放一个字符串“b”。无论如何,我最后一次尝试。看看这是否是你想要的。对不起,这是我的错误。我意识到如果在其他位置上不同,它不能在该位置返回“b”
def find_fully_correct(answer, guess):
    """(list,list) -> list
    Return a list containing a 'b' for each correctly positioned color in the guess
    >>>find_fully_correct(['g','b','r','b'], ['g','b','r','b'])
    ['b', 'b', 'b', 'b']
    """
    if list(guess) is == list(answer) : 
        return list = ['b', 'b', 'b', 'b']
['b' for i in range(len(guess)) if answer[i]==guess[i]]
def find_fully_correct(answer, guess):
    res = []
    for x, y in zip(guess, answer):
        if x == y:
            res.append("b")
    return res if res else None