表示調整
閉じる
挿絵表示切替ボタン
▼配色
▼行間
▼文字サイズ
▼メニューバー
×閉じる

ブックマークに追加しました

設定
0/400
設定を保存しました
エラーが発生しました
※文字以内
ブックマークを解除しました。

エラーが発生しました。

エラーの原因がわからない場合はヘルプセンターをご確認ください。

ブックマーク機能を使うにはログインしてください。
Pythonに「なろう系タイトルジェネレータ」を移植し、さらにいろんなツールを開発してみる物語  作者: 超プリン体
第一章 なろう系タイトルジェネレータを移植する
3/20

第三話 テキストをランダムに切り替える ~庭師の妹、美少女ハムスター

フレ登録、ブクマ、ポイント、ご質問などお気軽にどうぞ。


なおコードの左に全角スペースが2個入っている所が、実行時にエラーになる場合は、Tabに変更して実行してください。

 みなさんこんにちは。なろう系タイトルジェネレータ開発の第三話です。


 第二話では、「自動作成」ボタン、「終了」ボタンを押した時の動作を定義してみました。しかし、「自動作成」ボタンを押した時に、「自動作成ボタンが押されました」としか表示されないので、あまり楽しくないですね。そこで今回は、自動作成ボタンが押された時に、表示する文字を切り替えてみることにします。


 切り替える文字ですが、今回は説明を簡単にするために、次の3つだけにします。


 (1)「悪役令嬢転生したら本気だす」

 (2)「本好きのスライム無職だった件」

 (3)「ゼロから始めるスライム食堂」


 さてPythonで乱数を扱うためには、randomモジュールを使います。これを使うためには、プログラムの最初の方で、「import random」と宣言する必要があります。このモジュールを使って、0から2までの数字を乱数で作って、その数字に従って、上の(1)から(3)のタイトルのうちの一つを選び、ラベルに表示させてあげると、完成ですね。


 そのコードは、次のようになります。


 その1、randomモジュールを定義する部分。

import random


 その2、本のタイトルの配列を設定する部分。

list_title=["悪役令嬢転生したら本気だす","本好きのスライムだった件","ゼロから始めるスライム食堂"]


 その3、本のタイトルを3つからランダムに選んで、ラベルに表示する部分


def display_title():

# txt_title["text"]="自動作成ボタンが押されました"

  n=random.randint(0,2)

  txt_title["text"]=list_title[n]


 その3では、もともとあった関数の中身を変えることで、ラベルに表示させる文字が切り替わるようにしました。「自動作成ボタンが押されました」の行の先頭に、「#」と付けてありますが、これは、コメント行(実行してはいけない行)という意味です。


 その1からその3の変更で、コード全体がどうなったかを示しておきます。


(ここから)

# -*- coding: utf-8 -*-

import tkinter

import random

list_title=["悪役令嬢転生したら本気だす","本好きのスライムだった件","ゼロから始めるスライム食堂"]

#ウインドウ設定

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():

# txt_title["text"]="自動作成ボタンが押されました"

  n=random.randint(0,2)

  txt_title["text"]=list_title[n]


btn_create["command"]=display_title


def destroy_tk():

  tk.destroy()

btn_quit["command"]=destroy_tk



tk.mainloop()

(ここまで)


挿絵(By みてみん)


 どうですか? 実行できましたか? 実行ボタンを何回か押していると、表示が切り替わるときと、切り替わらないときがあることに、気づいたでしょうか?


 これはたまたま、3つあるうちの同じタイトルが連続で選ばれた時に、起こる現象です。次回はこの、たまたま発生する現象を、発生しないようにする改善をしたいと思います。


では次回またお会いしましょう。

評価をするにはログインしてください。
ブックマークに追加
ブックマーク機能を使うにはログインしてください。
― 新着の感想 ―
このエピソードに感想はまだ書かれていません。
感想一覧
+注意+

特に記載なき場合、掲載されている作品はすべてフィクションであり実在の人物・団体等とは一切関係ありません。
特に記載なき場合、掲載されている作品の著作権は作者にあります(一部作品除く)。
作者以外の方による作品の引用を超える無断転載は禁止しており、行った場合、著作権法の違反となります。

この作品はリンクフリーです。ご自由にリンク(紹介)してください。
この作品はスマートフォン対応です。スマートフォンかパソコンかを自動で判別し、適切なページを表示します。

↑ページトップへ