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

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

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

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

Q&A

解決済

1回答

5064閲覧

Python3のバイトコンパイルで複数の.pyを1つの.pycにしたい

sh-o

総合スコア20

Python 3.x

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

0グッド

0クリップ

投稿2016/06/21 13:50

###Python3のバイトコンパイルで複数の.pyを1つの.pycにしたい

実行環境:Ubuntu16.04, Python3.5.1
にて、複数の.pyをバイトコンパイルを用いて1つの.pycにしたいと考えております。

具体的には、以下のような2つの.pyファイルを、

Python

1#ファイル名はtest0.py 2from test1 import func 3 4for i in range(10): 5 if func(i) == 1: 6 print(i)

Python

1#ファイル名はtest1.py 2def func(i): 3 if i % 2 == 0: 4 return 0 5 else: 6 return 1
#コンパイルのコマンド py -m compileall .

でバイトコンパイルしておりますが、複数の.pycファイルが生成されてしまっており、
2つが揃っていないと実行できない状況となっております。

これを、C++などでの以下のような方法に似た手段で1つの.pycファイルにまとめることはできないでしょうか?

C++

1//ファイル名はtest0.cpp 2#include <bits/stdc++.h> 3using namespace std; 4int test_func(int); 5int main(){ 6 int i; 7 for (i=0; i<10; i+=1){ 8 if (test_func(i) == 0){ 9 cout << i << endl; 10 } 11 } 12 return 0; 13}

C++

1//ファイル名はtest1.cpp 2#include <bits/stdc++.h> 3using namespace std; 4int test_func(int i){ 5 if (i % 2 == 0){ 6 return 0; 7 } 8 else{ 9 return 1; 10 } 11}
#コンパイルのコマンド g++ test0.cpp test1.cpp

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

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

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

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

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

guest

回答1

0

ベストアンサー

zipapp (https://docs.python.org/3/library/zipapp.html) を使って一つの pyz にまとめられますが、これで実現できますか?

投稿2016/06/24 09:59

matobaa

総合スコア2493

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

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

sh-o

2016/06/25 13:53

ご回答いただき有難うございました。 pyzで1つのファイルにまとめることが出来、実行することができました。 有難うございました
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問