No.4ベストアンサー
- 回答日時:
チュートリアルです。
一通りのことが書いてあります。
これを見れば、pycについて、ほとんど書いてないのがわかると思います。
編集するのはpyファイルで、中身はテキストファイルです。
pycについて書いてあるのは、次の箇所くらいです。
http://docs.python.jp/2/tutorial/modules.html#py …
補足にあった内容から、 py2exe を使用して作った実行ファイルだと思われます。
http://www.python.jp/Zope/Zope/articles/tips/py2 …
この目的は、Pythonのインストールされていない環境でも実行できるようにするものです。
編集すること、pyを公開することは考えていません。
そのため「py2exeはどのように動作するのか?」に書いてあるように、ソースコードは含めずに、コンパイル済みのpycのみを使います。
編集が目的なら、ソースコード毎一式貰うのが普通です。
pycだけ、ということには、次のような副次的な効果があります。(上記「6.2.2. “コンパイル” された Python ファイル」より)
> (略)ファイル spam.py のない spam.pyc (略)があってもかまいません。
> (略)リバースエンジニアリングがやや困難な形式で配布するために使えます。
その「宿題」が「Pythonの勉強」「機能の変更」なら、pycから、というのは無茶な話です。
その「宿題」が「リバースエンジニアリング」なら、pycからpyに戻す方法を探すのが第一でしょう。
# リバースエンジニアリングの是非は、主題ではないのでおいておきます。
ちなみに、pyd の実体は DLL です。C言語等で作られたプログラムをPythonで使うためのものです。
こちらは、逆コンパイルは無理だと言ってよいでしょう。
バイナリエディタで探さなくても、解凍しただけで取り出せましたが
例のPYCをPYに変換する事ができませんでした。
使用したツールは、Easy Python Decompilerです。
説明書に、
The decompiled file has an extension of
.pyc_dis or .pyo_dis as the case may be.
とあったので、.pyo_disを.pyに変更してもダメでした。
教えて頂いたLINKをじっくり勉強していき、色々分かりました。
また新たに何かあれば質問させて頂きたいと思います。
ありがとうございました。
No.3
- 回答日時:
んーと、前にも言った通り私は Python については門外漢なのですが、書き換えてくれと頼まれたということは頼んだ相手がいるという事ですよね。
その方がソースファイルを持っているかソースファイルのありかを知っているのではないのですか?そもそも、書き換えを頼んだ相手は書き換えをしたい理由を話されましたか? 契約の守秘義務に反しない範囲でその理由をお教えいただければ幸いです。
再度回答有難うございます。
Python以外の言語を扱っているのですね。
頼まれたというか、宿題みたいなものを出されたんです。
隠蔽という表現が怪しかったかもしれませんが、身内なので大丈夫です。
No.2
- 回答日時:
pyc ソースファイルをコンパイルしたもの
pyo pycを「最適化」したもの
で、通常は「どちらも編集したり閲覧したりしません」
プログラムの修正は、ソースファイルである .py で行います。
pyを編集すれば、対応するpycやpyoは、勝手に作られるものです。
通常は、pycとpyoを削除しても、pyがあれば動作します(し、pycが勝手に作られることがあります)
ソースコードは付いてないのですか?
この回答への補足
隠蔽されている事が分かりました。
zip圧縮した上でexeファイルの末尾に結合されているようです。
バイナリエディタで探してみます。
そうだったのですね。
ソースコードとはどういったものですか?やる気はあるので教えてください。
このpycファイルは、********Srvというフォルダ直下にあります。
その他このフォルダ内には、いくつかのpyc pydファイルがありました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAを何回も作り直して、容量が...
-
” OS ビルド ” の意味が分か...
-
Makefile作成時の拡張子.oとは?
-
「fatal error C1189」を回避す...
-
1 つ以上の複数回定義されてい...
-
C言語でヘッダファイルにグロー...
-
<math.h>があるのにsqrtが・...
-
セミコロンについて
-
関数形式マクロ
-
クリティカルエラー Expressio...
-
エクセルVBAではRound...
-
C言語でmからnまでの合計を求め...
-
C言語のコンパイルができません
-
定数式とはどういう意味でしょ...
-
サンプルスケッチをそのまま使...
-
bccでwinmm.libをリンクする方...
-
コンパイル??
-
C++コンパイル時に『 C1083: in...
-
C#のコマンドラインの分割コ...
-
c言語においてオブジェクトファ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAを何回も作り直して、容量が...
-
” OS ビルド ” の意味が分か...
-
1 つ以上の複数回定義されてい...
-
「fatal error C1189」を回避す...
-
エクセルVBAではRound...
-
Makefile作成時の拡張子.oとは?
-
C言語でヘッダファイルにグロー...
-
ILSpyで、デコンパイルできない。
-
セミコロンについて
-
<math.h>があるのにsqrtが・...
-
クリティカルエラー Expressio...
-
外部シンボル "_main"は未解決です
-
マクロ コンパイルがグレーバック
-
[c++] <pthread.h>がinclude で...
-
C++コンパイル時に『 C1083: in...
-
【VC++6.0(MFC)】警告「LINK : ...
-
ビルドとリビルドの違いを教え...
-
コンパイルエラー:ユーザ定義...
-
VB6で開発中…標準モジュール間...
-
コンパイル??
おすすめ情報