AttributeError: モジュール 'tkinter' は属性 'filedialog' を持っていない Solution
tkinter を使って小さなインターフェースを書くことを学習すると、このようなエラーが発生します。
AttributeError: モジュール 'tkinter' には 'filedialog' という属性がありません。
これを見ると、エラーになっているのは20行目のコードで、filedialogを使っているコマンドの行であることがわかります。
この問題はfiledialogがtkinterのモジュールであり、関数やプロパティではないため発生します。これは正しい呼び出し方とは言えません。
こんなテストをしてみました。
1. tk.filedialogを呼び出してみる
モジュール 'tkinter' に 'filedialog' という属性がないため、エラーが発生します。
2. モジュールfiledialogを導入し、その関数を呼び出してみてください。
呼び出しに成功しました。
以下のようにコードを修正したところ、正常に動作するようになりました。
実行結果、ファイルダイアログの呼び出しに成功
要約すると
このことから、filedialogはtkinterモジュールの下にあるサブモジュールであり、彼の関数やプロパティではないことがわかります。filedialogモジュールの下にある関数に直接行くことはできず、filedialogというサブモジュールを持ってきて、その関数を使う必要があります。
この問題から、改めてpythonを使う際には、サブモジュールと関数の性質に注意する必要があることがわかります。
また、これはクラスにおける関連知識であり、サブモジュールはサブクラス、関数は親クラスにおける関数である。
参考リンク 参考リンク
関連
-
[解決済み】AttributeError: .dt アクセサは、datetimelike 値でしか使用できません。
-
[解決済み】pythonでimmutable辞書を作成する方法は?
-
[解決済み] TypeError: PythonでJSONをパースするとき、文字列のインデックスは整数でなければなりませんか?
-
[解決済み] Flask のエラー: werkzeug.routing.BuildError
-
[解決済み] pythonスクリプトでpymongoの認証に失敗した
-
[解決済み] コンパイラのフラグでtensorflowをリビルドするには?
-
[解決済み] Pythonのurlopenエラー
-
データフレームの基本
-
EnvironmentErrorのため、パッケージをインストールできませんでした。[Errno 28] デバイスに空き領域がありません。
-
はこのプラットフォームでサポートされているホイールではありません
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Pip - ランチャーで致命的なエラーが発生しました。Unable to create process using '"'.
-
[解決済み】Pytesseract : "TesseractNotFound Error: tesseract is not installed or it's not in your path", how do I fix this?
-
自分で書いたPythonインポートpyファイル
-
[解決済み] ソケットを接続しようとするとECONNABORTEDが表示されますが、どういう意味ですか?
-
[解決済み] argsortを降順で使用することは可能ですか?
-
[解決済み] このラムダ関数がどのように機能するかを理解する
-
[解決済み] Flaskでチェックボックスの値を取得する
-
[解決済み] Pythonでタプルを平坦化する方法
-
spyderについて ImportError: matplotib.pyplotという名前のモジュールはありません。
-
args','**','**kwargs' を理解する。