質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Tkinter

Tkinterは、GUIツールキットである“Tk”をPythonから利用できるようにした標準ライブラリである。

解決済

defの中でグローバル関数を宣言しているが上手くいかない

BlueSkyKDM
BlueSkyKDM

総合スコア1

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Tkinter

Tkinterは、GUIツールキットである“Tk”をPythonから利用できるようにした標準ライブラリである。

2回答

0リアクション

0クリップ

193閲覧

投稿2022/08/15 04:00

前提

pythonでguiをいじろうとして試しに人狼を作ろうとしています

実現したいこと

職業の数を入力する

発生している問題・エラーメッセージ

Traceback (most recent call last): File "main.py", line 23, in <module> input_gui() File "/run/user/1000/gvfs/smb-share:server=192.168.11.115,share=build/sora/wolfware/input_gui.py", line 7, in input_gui warewolf_count_pulldown = ttk.Combobox(values=module, textvariable=warewolf_count) NameError: name 'module' is not defined

該当のソースコード

main.py

import tkinter as tk, tkinter.ttk as ttk, random from input_gui import input_gui warewolf_count = 0 madman_count = 0 medium_count = 0 soothsayer_count = 0 hunter_count = 0 villeger_count = 0 module = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] app =tk.Tk() canvas = tk.Canvas( app, width=400, height=500, highlightthickness=0 ) canvas.grid(row=0, rowspan=20) input_gui() app.mainloop() print(warewolf_count, madman_count, medium_count, soothsayer_count, hunter_count, villeger_count)

input_gui.py

import tkinter as tk, tkinter.ttk as ttk def input_gui(): global warewolf_count, madman_count, medium_count, soothsayer_count, hunter_count, villeger_count, module #人狼テキストボックス warewolf_count_pulldown = ttk.Combobox(values=module, textvariable=warewolf_count) warewolf_count_pulldown.grid(row=1, column=0) #人狼ラベル warewolf_count_label = tk.Label(text="人狼") warewolf_count_label.grid(row=0) #狂人テキストボックス madman_count = tk.Entry(width=20) madman_count.grid(row=3) #狂人ラベル madman_count_label = tk.Label(text="狂人") madman_count_label.grid(row=2) #霊媒師テキストボックス medium_count_pulldown = ttk.Combobox(values=module, textvariable=medium_count) medium_count_pulldown.grid(row=5) #霊媒師ラベル medium_count_label = tk.Label(text="霊媒師") medium_count_label.grid(row=4) #占い師テキストボックス soothsayer_count_pulldown = ttk.Combobox(values=module, textvariable=soothsayer_count) soothsayer_count_pulldown.grid(row=7) #占い師ラベル soothsayer_count_label = tk.Label(text="占い師") soothsayer_count_label.grid(row=6) #狩人テキストボックス hunter_count_pulldown = ttk.Combobox(values=module, textvariable=hunter_count) hunter_count_pulldown.grid(row=9) #狩人ラベル hunter_count_label = tk.Label(text="狩人") hunter_count_label.grid(row=8) #村人テキストボックス villeger_count_pulldown = ttk.Combobox(values=module, textvariabl=villeger_count) villeger_count_pulldown.grid(row=11) #村人ラベル villeger_count_label = tk.Label(text="村人") villeger_count_label.grid(row=10)

補足情報

OS:Zorin OS 16.1
Python:3.9.10

以下のような質問にはリアクションをつけましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

リアクションが多い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

下記のような質問は推奨されていません。

  • 間違っている
  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

2022/08/15 11:38

こちらの質問が他のユーザーから「やってほしいことだけを記載した丸投げの質問」という指摘を受けました。

2022/08/15 04:55

こちらの質問が他のユーザーから「プログラミングに関係のない質問」という指摘を受けました。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Tkinter

Tkinterは、GUIツールキットである“Tk”をPythonから利用できるようにした標準ライブラリである。