第五話 登録されたキーワードからいくつか選んでタイトルにする ~神速のテクノロジー時のリセット埋葬
フレ登録、ブクマ、ポイント、ご質問などお気軽にどうぞ。
なおコードの左に全角スペースが2個入っている所が、実行時にエラーになる場合は、Tabに変更して実行してください。
2022.2.6、コード中のrandint(0,n_word)-1は、randint(1,n_word)-1の間違いだったので修正しました。動作的には、あまり違いはないはずです。
みなさんこんにちは。なろう系タイトルジェネレータ開発の第五話です。
第四話では、同じキーワードが複数選ばれなくするための、機能を追加してみました。今回は、それはなかったことにして、複数登録されたキーワードから、いくつか選んでくっつけ、それをタイトルにしてみる、という機能を実現してみます。
なぜ「なかったことにする」のかというと、今後キーワードから選んでくっつけるように変更して、そのキーワードをどんどん増やしていった場合、同じキーワードが連続して選ばれる確率は、めっちゃ低く、重複チェックをする意味があまりないことが理由の一つです。理由はもう一つあって、そういう、大量のキーワードから、複数のキーワードをセレクトした時の重複チェックが、結構CPUに負担をかけるので、不要だったらあまりやらせたくない、という2点です。
で、今回は説明は抜きにして、いきなりコード全体を示します。なぜかというと、変更点が多すぎて説明が面倒だし、あまり細かい説明をするよりも、結論を早く出した方が、今回はよさそうだと判断したためです。
(ここから)
# -*- coding: utf-8 -*-
import tkinter
import random
list_word=["悪役令嬢","転生したら","本気だす","本好きの","スライム","だった件","ゼロから始める","食堂"]
n_word=len(list_word)
#ウインドウ設定
tk=tkinter.Tk()
tk.title(u"なろう系タイトルジェネレータ")
tk.minsize(480,200)
#ウインドウ表示
win=tkinter.Canvas(bg="black",width=480,height=200)
win.place(x=0,y=0)
btn_quit = tkinter.Button(tk, text='終了')
btn_quit.place(x=130, y=80)
btn_create = tkinter.Button(tk, text='自動作成')
btn_create.place(x=50, y=80)
txt_title=tkinter.Label(text=u"ここにランダムで作成したタイトルが表示されます。")
txt_title.place(x=0,y=0)
def display_title():
title_str = ""
for i in range(0, random.randint(3,9)):
title_str=title_str+list_word[random.randint(1,n_word)-1]
txt_title["text"]=title_str
print(title_str)
btn_create["command"]=display_title
def destroy_tk():
tk.destroy()
btn_quit["command"]=destroy_tk
tk.mainloop()
(ここまで)
上の方にある、「list_word=[」っていう部分で、キーワードを登録しています。ここで登録しているのは、"悪役令嬢"、"転生したら"、"本気だす"、"本好きの"、"スライム"、"だった件"、"ゼロから始める"、"食堂"、の8つです。
セレクトするキーワードの個数は、どこで設定しているのかというと、「random.randint(3,9)」の部分です。この設定でいうと、「3個から9個までの個数で」キーワードを選んでくっつける、という動きになります。
なので、list_wordにキーワードを追加すれば、もっといろいろなタイトルが作れるようになるし、(3,9)の部分を変更すれば、もっと短いタイトルや、もっと長いタイトルを作れるようになります。
ちなみに、上の設定で、タイトルを10回自動生成させてみると……。
食堂食堂本気だすだった件ゼロから始める食堂だった件スライム
ゼロから始めるゼロから始める本気だすゼロから始める悪役令嬢ゼロから始める本好きの
スライム悪役令嬢本気だす悪役令嬢食堂本気だす食堂
悪役令嬢ゼロから始めるスライム悪役令嬢食堂本気だす本気だす本気だす
悪役令嬢本好きの本好きのゼロから始めるだった件
悪役令嬢スライム転生したらだった件ゼロから始める食堂だった件
ゼロから始めるスライムだった件悪役令嬢転生したら食堂
だった件食堂転生したらゼロから始める
本好きの本好きの食堂
食堂スライムゼロから始めるだった件スライム本好きの
うん、キーワード8個程度では、使い物になりませんね……。
ということで、今回はここまでですが、次回は私が以前使っていた、大量のキーワードを埋め込んだコードを紹介します。そんなコードがあるなら、最初からそれを出せよって言われそうですね。
では次回またお会いしましょう。




