你不知道的斗破苍穹之python篇

斗宗强者,恐怖如斯!
这个梗来源于《斗破苍穹》
《斗破苍穹》是一本连载于起点中文网的古装玄幻小说,作者是起点白金作家天蚕土豆(李虎)。这里是属于斗气的世界,没有花俏艳丽的魔法,有的,仅仅是繁衍到巅峰的斗气!心潮澎湃,无限幻想,迎风挥击千层浪,少年不败热血!
嗯,让我们用py来分析一下这部精彩(laji)小说
1.用tkinter库的button来显示查询菜单

Button(root, text ="斗破苍穹",font = 50,fg = 'red',width=100,anchor = 'ne',height = 2).pack()
Button(root, text="人物出现次数", width=50,command = callbacka,height = 2).pack()
Button(root, text="查看全文",width=50,command = callbacktext,height = 2).pack()
Button(root, text="人物与萧炎关系",width=50,fg="green",state ='disabled',height = 2).pack()
Button(root, text="人物介绍",bd=2,width=50,state ='disabled',height = 2).pack()
Button(root, text="云韵",bd=2,width=28,command=callback1,bg="pink").pack()
Button(root, text="萧薰儿",bd=2,width=28,command=callback2,bg="pink").pack()
Button(root, text="小医仙",bd=2,width=28,command=callback3,bg="pink").pack()
Button(root, text="美杜莎女王",bd=2,width=28,command=callback4,bg="pink").pack()
Button(root, text="萧玉",bd=2,width=28,command=callback5,bg="pink").pack()
Button(root, text="药老",bd=2,width=28,command=callback6,bg="pink").pack()
Button(root, text="雅妃",bd=2,width=28,command=callback7,bg="pink").pack()
Button(root, text ="你所不知道的斗破苍穹",font = 50,fg = 'blue',width=100,anchor = 'sw',height = 2).pack()
root.mainloop()

  1. 效果如图:
    在这里插入图片描述
    2.用字典存储人物,键表示人物姓名,键值表示人物出现次数用字典存储人物,键表示人物姓名,键值表示人物出现次数
dic = {"纳兰嫣然":0,"云韵":0,"薰儿":0,"萧炎":0,"美杜莎女王":0,"萧玉":0,"药老":0,"小医仙":0,"雅妃":0}

查询结果:
查看人物关系
在这里插入图片描述
人物出现次数:
在这里插入图片描述
源代码:

from tkinter import *
import tkinter.messagebox
dic = {"纳兰嫣然":0,"云韵":0,"薰儿":0,"萧炎":0,"美杜莎女王":0,"萧玉":0,"药老":0,"小医仙":0,"雅妃":0}
dic1 = {"纳兰嫣然":0,"云韵":0,"薰儿":0,"美杜莎女王":0,"萧玉":0,"药老":0,"小医仙":0,"雅妃":0}
with open("D:\\斗破苍穹.txt",encoding='UTF-8', errors='ignore') as fp:
    for line in fp:
        if "纳兰嫣然" in line :
            dic["纳兰嫣然"] = dic["纳兰嫣然"] + 1
            if "萧炎" in line:
                dic1["纳兰嫣然"] = dic1["纳兰嫣然"] + 1
        if "云韵" in line :
            dic["云韵"] = dic["云韵"] + 1
            if "萧炎" in line:
                dic1["云韵"] = dic1["云韵"] + 1
        if "云岚宗宗主" in line :
            dic["云韵"] = dic["云韵"] + 1
            if "萧炎" in line:
                dic1["云韵"] = dic1["云韵"] + 1
        if "云芝" in line :
            dic["云韵"] = dic["云韵"] + 1
            if "萧炎" in line:
                dic1["云韵"] = dic1["云韵"] + 1
        if "萧炎" in line :
            dic["萧炎"] = dic["萧炎"] + 1
        if "萧玉" in line:
            dic["萧玉"] = dic["萧玉"] + 1
            if "萧炎" in line:
                dic1["萧玉"] = dic1["萧玉"] + 1
        if "薰儿" in line and "萧炎" in line:
            dic["薰儿"] = dic["薰儿"] + 1
            if "萧炎" in line:
                 dic1["薰儿"] = dic1["薰儿"] + 1
        if "美杜莎" in line and "萧炎" in line:
            dic["美杜莎女王"] = dic["美杜莎女王"] + 1
            if "萧炎" in line:
                 dic1["美杜莎女王"] = dic1["美杜莎女王"] + 1
        if "彩鳞" in line and "萧炎" in line:
            dic["美杜莎女王"] = dic["美杜莎女王"] + 1
            if "萧炎" in line:
                 dic1["美杜莎女王"] = dic1["美杜莎女王"] + 1
        if "药老" in line and "萧炎" in line:
            dic["药老"] = dic["药老"] + 1
            if "萧炎" in line:
                 dic1["药老"] = dic1["药老"] + 1
        if "小医仙" in line and "萧炎" in line:
            dic["小医仙"] = dic["小医仙"] + 1
            if "萧炎" in line:
                 dic1["小医仙"] = dic1["小医仙"] + 1
        if "雅妃" in line and "萧炎" in line:
            dic["雅妃"] = dic["雅妃"] + 1
            if "萧炎" in line:
                 dic1["雅妃"] = dic1["雅妃"] + 1
d = sorted(dic.items(),key = lambda dic:dic[1],reverse = True)
d1 = sorted(dic1.items(),key = lambda dic1:dic1[1],reverse = True)
root = Tk()
root.title("斗破苍穹")
def callbacka():
    print("总出现次数:")
    for i in range(0,len(d)):
        print(d[i])
    print("与萧炎一起出现次数:")
    for i in range(0,len(d1)):
        print(d1[i])
def callback1():
    print("云韵:")
    print("出现次数:",dic["云韵"]);
    with open("D:\\斗破苍穹.txt",encoding='UTF-8', errors='ignore') as fp:
        for line in fp:
            if "云韵" in line and "红唇" in line and "银牙" in line:
                print(line);
def callback2():
    print("古薰儿:")
    print("出现次数:",dic["薰儿"]);
    with open("D:\\斗破苍穹.txt",encoding='UTF-8', errors='ignore') as fp:
        for line in fp:
            if "薰儿" in line and "清雅微笑" in line :
                print(line);
def callback3():
    print("小医仙:")
    print("出现次数:",dic["小医仙"]);
    with open("D:\\斗破苍穹.txt",encoding='UTF-8', errors='ignore') as fp:
        for line in fp:
            if "小医仙" in line and "白色衣裙" in line and "倾洒" in line:
                print(line);
def callback4():
    print("美杜莎女王:")
    print("出现次数:",dic["美杜莎女王"]);
    with open("D:\\斗破苍穹.txt",encoding='UTF-8', errors='ignore') as fp:
        for line in fp:
            if "美杜莎女王" in line and "衣裙" in line:
                print(line);
def callback5():
    print("萧玉:")
    print("出现次数:",dic["萧玉"]);
    with open("D:\\斗破苍穹.txt",encoding='UTF-8', errors='ignore') as fp:
        for line in fp:
            if "萧玉" in line and "堪称完美的性感长腿" in line:
                print(line);
def callback6():
    print("药老:")
    print("出现次数:",dic["药老"]);
    with open("D:\\斗破苍穹.txt",encoding='UTF-8', errors='ignore') as fp:
        for line in fp:
            if "药老" in line and "紧绷着的苍老脸庞" in line:
                print(line);
def callback7():
    print("雅妃:")
    print("出现次数:",dic["雅妃"]);
    with open("D:\\斗破苍穹.txt",encoding='UTF-8', errors='ignore') as fp:
        for line in fp:
            if "雅妃" in line and "尤物" in line:
                print(line);
def callbacktext():
    with open("D:\\斗破苍穹.txt",encoding='UTF-8', errors='ignore') as fp:
        for line in fp:
                print(line);
Button(root, text ="斗破苍穹",font = 50,fg = 'red',width=100,anchor = 'ne',height = 2).pack()
Button(root, text="人物出现次数", width=50,command = callbacka,height = 2).pack()
Button(root, text="查看全文",width=50,command = callbacktext,height = 2).pack()
Button(root, text="人物与萧炎关系",width=50,fg="green",state ='disabled',height = 2).pack()
Button(root, text="人物介绍",bd=2,width=50,state ='disabled',height = 2).pack()
Button(root, text="云韵",bd=2,width=28,command=callback1,bg="pink").pack()
Button(root, text="萧薰儿",bd=2,width=28,command=callback2,bg="pink").pack()
Button(root, text="小医仙",bd=2,width=28,command=callback3,bg="pink").pack()
Button(root, text="美杜莎女王",bd=2,width=28,command=callback4,bg="pink").pack()
Button(root, text="萧玉",bd=2,width=28,command=callback5,bg="pink").pack()
Button(root, text="药老",bd=2,width=28,command=callback6,bg="pink").pack()
Button(root, text="雅妃",bd=2,width=28,command=callback7,bg="pink").pack()
Button(root, text ="你所不知道的斗破苍穹",font = 50,fg = 'blue',width=100,anchor = 'sw',height = 2).pack()
root.mainloop()

github项目用py分析斗破苍穹开源链接:https://github.com/cxcWxz/doupocangqiong
新人博客,多多指正

猜你喜欢

转载自blog.csdn.net/JAck_chen0309/article/details/84887743