Python 如何在列表中的词典字符串中搜索单词?

Python 如何在列表中的词典字符串中搜索单词?,python,list,dictionary,search,Python,List,Dictionary,Search,这是我的当前代码,但是当我为列表中的每个元素运行它时,它将打印“未找到结果”,如果它在那里,它将打印该代码。我希望它可以打印存在的结果,也可以只打印未找到的结果。只需使用resultCount保存列表中找到的结果计数,并在for循环后检查计数 def SearchEntryComment(): print("\n\nSearch for guestbook comment with a keyword\n") CommentSearch = input("Enter key wo

这是我的当前代码,但是当我为列表中的每个元素运行它时,它将打印“未找到结果”,如果它在那里,它将打印该代码。我希望它可以打印存在的结果,也可以只打印未找到的结果。

只需使用
resultCount
保存列表中找到的结果计数,并在for循环后检查计数

def SearchEntryComment():
    print("\n\nSearch for guestbook comment with a keyword\n")
    CommentSearch = input("Enter key word for search: ")
    for i in range(len(dlGuestBook)):
        if CommentSearch in dlGuestBook[i]["Comment"]:
            print(i+1, ".", dlGuestBook[i] ["FirstName"], dlGuestBook[i]["LastName"], dlGuestBook[i]["Date"])
            print(dlGuestBook[i]["Comment"], "\n")
        else:
            print("No results found")
    print("\n")

仔细观察您的
for
循环正在做什么

def SearchEntryComment():
    print("\n\nSearch for guestbook comment with a keyword\n")
    CommentSearch = input("Enter key word for search: ")
    resultCount = 0
    for i in range(len(dlGuestBook)):
        if CommentSearch in dlGuestBook[i]["Comment"]:
            print(i+1, ".", dlGuestBook[i] ["FirstName"], dlGuestBook[i]["LastName"], dlGuestBook[i]["Date"])
            print(dlGuestBook[i]["Comment"], "\n")
            resultCount += 1
    if resultCount == 0:
        print("No results found")
    print("\n")
我认为,如果循环没有找到任何结果,则只需在循环完成后打印“未找到结果”。像这样的事情可能是一个解决方案

for i in range(len(dlGuestBook)): # for each entry in the guestbook
        if CommentSearch in dlGuestBook[i]["Comment"]:
            # print the comment
        else:
            print("No results found")

在进入
for
循环之前,将名为
found
的变量设置为
False
。如果找到某个内容,请将其设置为
True
。循环完成后,您将知道是否要打印“未找到结果”消息。它应该是
False
True
,而不是
False
True
。对于以前的所有结果,此消息都不起作用,它仍然不会显示任何结果。例如,如果第三个用户有来自CommentSearch的注释,它将不会显示任何结果,没有结果注释,但我明白您的意思
foundComment = False
for i in range(len(dlGuestBook)):
    if CommentSearch in dlGuestBook[i]["Comment"]:
        foundComment = True
        # print the comment

if not foundComment:
    print("No results found")