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

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

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

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

Q&A

3回答

622閲覧

exe化について(python)

12qwas

総合スコア0

Python

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

0グッド

0クリップ

投稿2023/06/16 11:08

実現したいこと

EXEファイルを正常に実行させたい。

前提

下記コマンドでexeファイルを作成しました。
pyinstaller action.py --onefile

作成されたexeファイルを実行したところ、AかBを選択したあと下記エラーが出て、正常に動作しませんでした。
正しくexeファイルが作成できていないため、作成方法ついてを教えていただきたいです。

〈action.py〉
import easygui
import subprocess

choice = ["A", "B"]
selected_choice = easygui.buttonbox("AかBを選択してください", choice=choice)

if selected_choice == "A":

subprocess.run(["python", "example1.py"])

subprocess.run(["python", "example2.py"])

elif selected_choice == "B":

subprocess.run(["python", "example3.py"])

subprocess.run(["python", "example4.py"])

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

python: can't open file 'C:\Users\11\dist\example1.py' : [Errno 2] No such file or directory

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

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

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

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

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

TakaiY

2023/06/16 13:44

エラーメッセージの内容は確認していますか? 「C:\Users\11\dist」というディレクトリに 「example1.py」や「example2.py」というファイルはありますか?
guest

回答3

0

カレントディレクトリー(今はC:\Users\11\dist)にそれらのファイル(example1.pyなど)が無いと言うことでしょう。
カレントディレクトリーの概念を理解していない場合は、ファイルの指定は全てフルパス(C:\から始まるパス)で書きましょう。

こういうプログラムはexeにする意味が無い気がします。

投稿2023/06/16 11:25

編集2023/06/16 11:27
otn

総合スコア84798

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

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

otn

2023/06/16 14:42

もしかして、example1.py等の内容も取り込んでEXE化してくれると思っていたと言うことなのでしょうか?? さすがにそれは無理です。 subprocess.run は「このプロウガムの外の別のプログラムを起動する」という意味なので、起動されるコマンドはこのプログラムの内部では無いです。 このプログラムの一部として実行したければ、コピペでソースを埋め込むかimportするかして、そこで定義された関数を呼び出しましょう。
guest

0

それは正しくEXEファイルが作成されない、ではなく、元のコードにバグが有る、ってことです。
まずはあなたのコードを見直そう

投稿2023/06/16 11:21

y_waiwai

総合スコア87800

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

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

0

[香車]東上☆あらし☆海美「

pyinstaller action.py --onefile

これでは

example1.py
example2.py
example3.py
example4.py

まで、.exe 化されないのでは ?

subprocess.run(["python", "example1.py"])

この行は、example1.py を呼ぶコードになるので、.exe の実行時に example1.py が必要となるのでは ?

Python

1import example1 2 3funcExample1();

みたいなソースコードじゃ、駄目なんですか ?

投稿2023/06/16 13:03

umimi

総合スコア241

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

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

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

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

ただいまの回答率
85.46%

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

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

質問する

関連した質問