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

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

新規登録して質問してみよう
ただいま回答率
85.35%
Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Jupyter

Jupyter (旧IPython notebook)は、Notebook形式でドキュメント作成し、プログラムの記述・実行、その実行結果を記録するツールです。メモの作成や保存、共有、確認などもブラウザ上で行うことができます。

PyInstaller

PyInstallerは、Pythonのスクリプトを一括でWindowsなどで動く実行可能ファイルに変換できるツールです。このツールを用いることで自作のPythonプログラムを別で使用する場合でもPythonをインストールする必要がありません。

再帰

情報工学における再帰とは、プログラムのあるメソッドの処理上で自身のメソッドが再び呼び出されている処理の事をいいます。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

1回答

3105閲覧

Pythonのexe化がうまく出来ない(RecursionError: maximum recursion depth exceeded while calling a Python object)

DEXIZA

総合スコア0

Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Jupyter

Jupyter (旧IPython notebook)は、Notebook形式でドキュメント作成し、プログラムの記述・実行、その実行結果を記録するツールです。メモの作成や保存、共有、確認などもブラウザ上で行うことができます。

PyInstaller

PyInstallerは、Pythonのスクリプトを一括でWindowsなどで動く実行可能ファイルに変換できるツールです。このツールを用いることで自作のPythonプログラムを別で使用する場合でもPythonをインストールする必要がありません。

再帰

情報工学における再帰とは、プログラムのあるメソッドの処理上で自身のメソッドが再び呼び出されている処理の事をいいます。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

1クリップ

投稿2020/11/02 10:24

Pythonのexe化がうまく出来ない(RecursionError: maximum recursion depth exceeded while calling a Python object)が出てしまう

Pythonのコードをpyinstaller を利用してexe化しようとしているのですが、うまくいきません
内容としては繰りかえしの処理の段階で再帰回数がオーバーしている模様ですが
元々

元々やりたかった事

Python

1import pandas as pd 2import glob 3import os 4 5 6csv_files = glob.glob('*.csv') 7list = []#リストの初期化 8for file in csv_files: 9 list.append(pd.read_csv(file,encoding="cp932"))#リストにcsvファイルを追加していく

というもので、単純に同階層にあるファイルをファイル分検知してリストに追加していくというものです。

本来この先があるのですが、一旦ここだけでexe化しようとしたところひっかかったので間違いないと思います。

試したこと

一応、breakを記述したりしましたが失敗
その後は試しに

Python

1import pandas as pd 2import glob 3import os 4 5 6csv_files = [1, 2, 3, 4, 5, 6] 7list = []#リストの初期化 8for file in csv_files: 9 list.append(pd.read_csv(file,encoding="cp932"))#リストにcsvファイルを追加していく 10 break

といった感じで超簡潔にしたのですがそれでも同様のエラーが出てしまいます。
どのようにしたら良いのか
どなたかご教示頂けたら幸いです。

補足情報(FW/ツールのバージョンなど)

INFO: PyInstaller: 4.0
INFO: Python: 3.7.6 (conda)

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

q_sane_q

2020/11/04 03:32

今ちょっと同じ環境は作れていないのですが、PyInstaller4.0の一つ前の3.6ではexe化することができました。 バージョンを3.6にしたらどのようになりますか? (PyInstallerにはRecursionErrorのissueがいくつか上がっているようですがまだしっかり追いきれていません)
DEXIZA

2020/11/08 05:10

こちら、解答ありがとうございます!一旦バージョンを下げるところまでは行ったので 後日再度試してみたいと思います!
DEXIZA

2020/11/13 02:32

すいません・・・こちらやはりバージョンを下げても解決できません・・・ よくよく見ると Traceback (most recent call last): File "c:\*******\anaconda3\lib\runpy.py", line 193, in _run_module_as_main から始まり数十行のエラーからの \anaconda3\lib\ast.py", line 188, in iter_fields yield field, getattr(node, field) RecursionError: maximum recursion depth exceeded while calling a Python object と締めくくられているのですが・・・ どうにも自分のファイルが原因ではないように見えるのですが・・これはどういう事なんでしょうか・・・?
guest

回答1

0

投稿2020/11/14 06:15

Reach

総合スコア735

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

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

アカウントをお持ちの方は

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問