本文主要是介绍野獸先軰发言生成器(v 0.1.0),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
python实现野兽发言生成器(version 0.1.0)
源起
最近看到github上的狗屁不通文章生成器,深受启发,决定用python实现一个野兽发言生成器,目前是0.1.0版本,只包括了简单的命令行。
带🐎
import sys
from numpy import randomdef article_create(out,notion,concate,idiom,tit,number):notion_list=notion.readlines()concate_list=concate.readlines()idiom_list=idiom.readlines()result=tit+'\n'notion_flag=0while len(result)<number:seed=random.randn()if seed<-2:result=result+titnotion_flag=1elif seed<-1 and notion_flag==1:nseed=random.randint(0,len(notion_list))curr_n=notion_list[nseed]result=result+curr_nnotion_flag=0elif seed<1:iseed=random.randint(0,len(idiom_list))curr_i=idiom_list[iseed]result=result+curr_inotion_flag=1elif seed<2:cseed=random.randint(0,len(concate_list))curr_c=concate_list[cseed]result=result+curr_cnotion_flag=1elif seed<3:result+='\n'notion_flag=0out.write(result)
def main(argv): word_num=int(argv[1])title=argv[2]try: article_obj=open('output.txt','wt')try:notions_obj=open('notions.txt','rt')try:concate_obj=open('concate.txt','rt')try:idioms_obj=open('idioms.txt','rt')article_create(article_obj,notions_obj,concate_obj,idioms_obj,title,word_num)idioms_obj.close()except Exception as err:print(err)concate_obj.close()except Exception as err:print(err)notions_obj.close()except Exception as err:print(err)article_obj.close()except Exception as err:print(err)
if __name__=="__main__": main(sys.argv)
运行结果
命令输入:
txt输出:
规划与总结
目前有两个问题:一是概率的分布需要调整(比如分段过多),二是语料库贫乏。
计划在下一个版本开发出gui,然后再优化随机算法。
完
这篇关于野獸先軰发言生成器(v 0.1.0)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!