您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何在Python中检查字符串是否在文本文件中并打印行?

如何在Python中检查字符串是否在文本文件中并打印行?

您应该尝试这样的事情:

import re
def check_string():
    #no need to pass arguments to function if you're not using them
    w = raw_input("Input the English word: ")

    #open the file using `with` context manager, it'll automatically close the file for you
    with open("example.txt") as f:
        found = False
        for line in f:  #iterate over the file one line at a time(memory efficient)
            if re.search("\b{0}\b".format(w),line):    #if string found is in current line then print it
                print line
                found = True
        if not found:
            print('The translation cannot be found!')

check_string() #Now call the function

如果您要搜索确切的单词而不只是子字符串,那么我建议regex在这里使用。

例:

>>> import re
>>> strs = "foo bar spamm"
>>> "spam" in strs        
True
>>> bool(re.search("\b{0}\b".format("spam"),strs))
False
python 2022/1/1 18:48:12 有357人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶