2015-10-28 54 views
0

說我有像這樣舉辦了Python代碼基地:是否可以製作「pyc only」「發行版」?

./mod/: 
    ./__init__.py 
    ./main/main.py 
    ./main/__init__.py 
    ./mytest/__init__.py 

文件

mod/main/__init__.py 

是空的。而

$ cat mod/main/main.py 
    import sys 
    import mytest 
    def main(argv): 
     mytest.test() 
     return 
    if __name__ == '__main__': 
     sys.exit(main(sys.argv[1:])) 

$ cat mod/mytest/__init__.py 
def test(): 
    print('test worked!') 

正如預期的那樣,這個工作(從目錄中 「MOD」):

$ python3 -m main.main 
test worked! 

現在,我想刪除所有.py文件,仍然能夠運行我以上的命令 - 或者非常相似的東西。 「非常相似」的定義是根本不必更改我的代碼結構 - 或者,如果不能完成,儘可能少。

我該如何做到這一點?

+2

爲什麼你想這樣做? – tuxtimo

+2

如果您希望以這種方式阻止人們閱讀您的代碼,請將其忘記。 '.pyc'文件不會被混淆,幾乎不可能。 Python甚至內置了一個Python反彙編程序,所以可以運行代碼的人甚至不需要下載任何額外的工具就可以開始分解它。 – user2357112

+0

這樣做的唯一原因是解決來自正在運行的編輯腳本的處理問題。人們編輯,忘記,跑步,問。這樣我可以創建pyc文件,並且如果有關於我創建的問題的問題 - 我可以處理它 - 否則人們可以確定他們已經編輯了代碼,並且應該自己解決他們的問題。 – TimBeaver

回答

1

compileall 

實用程序與 「-b」 選項所做的事情對我來說。

相關問題