第 0012 题: 敏感词文本文件 filtered_words.txt,里面的内容 和 0011题一样,当用户输入敏感词语,则用 星号 * 替换,

import re
def get_filters(path):
    if path is None:
        return
    filters = ["北京", "程序员", "公务员", "领导", "牛比", "牛逼", "你娘", "你妈", "love", "sex", "jiangge"]
    with open(path,encoding="utf-8") as f:
        line = f.read()
    # for line in (open(path, "w", encoding="utf-8").readlines()):
        if "\n" in line:
            filters.append(line[:-1])
        else:
            filters.append(line)

    f.close()

    return filters

def main():
    filters = get_filters("1.txt")
    while True:
        temp = input("input:")
        if temp == "0":
            print("Exit")
            break
        for filter_word in filters:
            new_str = ""
            if filter_word in temp:
                if len(re.findall(u"[\u4e00-\u9fa5]+",filter_word)) > 0:
                    len_new_str = len(filter_word)
                else:
                    len_new_str = 1

                for i in range(len_new_str):
                    new_str += "*"
                    temp = str(temp).replace(filter_word, new_str)

        print(temp)

if __name__ == "__main__":
    main()

猜你喜欢

转载自blog.csdn.net/shifanfashi/article/details/89424260