Python沙雕故事生成器

Python故事生成器

本文章小编来给大家分享使用Python制作一个故事生成器,仅供娱乐!

一、知识归纳

  1. StringVar:控件变量,python中在使用界面编程时,用于跟踪数值不断发生变化的变量,确保数值的变更可以随时在根窗口上面显示出来。
  2. get():用于获取文本框中用户输入的内容
  3. set():用于放置可变的文本或者其他内容,并使其在根窗口显示出来
  4. random.choice(seq):用于从序列中随机选择一个元素

二、创建代码

from tkinter import*#导入tkinter库
from tkinter import font#从tkinter库中导入font模块
import random#导入随机模块
from tkinter.messagebox import*#从tkinter库中导入messagebox模块


def reply():#定义功能函数,用于获取文本框的内容、随机选取沙雕故事、弹出错误提示框
    num1=textbox1.get()#将从左边文本框获取的内容赋值给变量num1
    num2=textbox2.get()#将从右边文本框获取的内容赋值给变量num2
    for i in range(10):#循环语句,循环次数为10次
        p=random.choice(place)#将随机选取的地点赋值给变量p
        t=random.choice(time)#将随机选取的时间赋值给变量t
        s=random.choice(story)#将随机选取的沙雕赋值给变量s
    if len(num1)!=0 and len(num2)!=0:#条件语句,判断文本框内是否都输入内容
         ok=str(mainstr1+t+num1+mainstr2+num2+p+s)#将沙雕故事赋值给变量ok
         txt.set(ok)#在根窗口显示沙雕故事
    else:#如果文本框中其中一个没有输入内容,出现错误提示窗口
        for i in range(3):
            showinfo(title="输入错误",message="别闹,什么都不输入,玩不起吗?")
           

root=Tk()
root.title("沙雕故事生成器")
root.geometry("500x300")
root.resizable(False,False)
ziti=font.Font(family='微软雅黑',size=10,weight=font.BOLD)#定义字体属性

#设置Label组件的属性及摆放位置
mylabel=Label(root,text="请输入你故事的主角们",font=ziti)
mylabel.place(relx=0.5,rely=0.5,anchor=CENTER)

#设置左边文本输入框的属性及摆放的位置
textbox1=Entry(root)
textbox1.place(relx=0.1,rely=0.3,anchor=W,width=150,height=25)

#设置右边文本输入框的属性及摆放的位置
textbox2=Entry(root)
textbox2.place(relx=0.9,rely=0.3,anchor=E,width=150,height=25)

#定义沙雕故事发生的时间、地点、人物、情节
mainstr1="故事发生在"
mainstr2="和"
place=["在贝加尔湖畔","在天台上","在路边","在男厕所","在课堂上","在漆黑的电影院"]
time=["一个春风和煦的清晨,","一个乌云密布的夜晚,","一个安静的夜晚,","一个炎热的中午,","一个下着大雪的清晨,"]
story=["唱二嬢","扭秧歌","脱鞋抠脚","围着火炉吃西瓜","撩妹","抛媚眼","放连环屁","吃屎"]

#创建控件变量
txt=StringVar()
txt.set("")
myvariablelabel=Label(root,textvariable=txt,font=ziti)
myvariablelabel.place(relx=0.5,rely=0.7,anchor=CENTER)

#创建Button组件用于点击生成故事
create=Button(root,text='生成故事',command=reply)
create.place(relx=0.5,rely=0.5,anchor=CENTER,width=100)
mylabel.pack()
root.mainloop()

三、运行程序

下面我们来运行程序,看能够产生什么样的沙雕故事!
Python沙雕故事生成器_第1张图片
Python沙雕故事生成器_第2张图片
Python沙雕故事生成器_第3张图片
使用python制作的一个小小的娱乐案例,不喜勿喷。创作不易,点个赞加个关注再走吧!更多内容请关注头条作者——小琳爱学习,和小琳一起悄悄拔尖儿!

你可能感兴趣的:(Python,人工智能,编程)