日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python怎样导出py文件_导出python模块(到字符串或py文件)

發布時間:2024/10/8 python 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python怎样导出py文件_导出python模块(到字符串或py文件) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

摘要:

我想要一個'module'類型的變量并導出它。在

我使用import從.py文件導入python模塊并對其進行更改。我需要將模塊導出回一個文件,或者獲取完整模塊的字符串表示形式,然后將其寫入磁盤。在

我一直找不到任何方法來導出python模塊或將模塊中的對象轉換為結構化的純文本python可執行格式的字符串。(不是json、酸洗等)

詳細問題和用例:

此要求是內部構建過程的一部分;沒有安全要求,只有我們自己的模塊(而不是內置模塊)正在被修改。python腳本與業務邏輯一起運行,以修改許多其他腳本。此進程使用僅在生成時可用的信息。因此,我無法選擇在運行時導入具有不同數據的模塊。在

最初的系統使用了一個帶有占位符字符串的模板,這些占位符字符串將被替換,但當前的需求要求對對象聲明進行更復雜的修改,在這種情況下,通過編程修改對象要比字符串替換容易得多。在

我做了什么

有了用python編寫的主生成器腳本,我可以導入多個模塊(它們只有變量聲明,沒有可執行代碼),并進行所有需要的替換。剩下的是module類型的變量,需要將其導出回一個文件中,以便以后執行。在

@阿巴內特有一些好主意。我不知道repr函數。這給了我信息,但沒有任何格式。這讓我看到了pprint,它與我所喜歡的非常接近。在

示例

示例.py在sample = {

'level1_dict_1' : {

'key1' : 'value1',

'key2' : {

'level2_dict' : {

'key1' : 'value3',

'key2' : ['list1','list2','list3','list4'],

}

}

},

'level1_dict_2' : {

'key1' : 'value1',

'key2' : 'value2',

},

}

大大簡化了(并且沒有應用任何業務邏輯),我基本上想做以下事情:

^{pr2}$

我希望有與源文件相同的格式,但是pprint雖然可讀,但格式與我希望的不同。這可能是我所需要的。在

p打印輸出:sample =

{'level1_dict_1': {'key1': 'value1',

'key2': {'level2_dict': {'key1': 'value3',

'key2': ['list1',

'list2',

'newlistitem3',

'list4']}}},

'level1_dict_2': {'key1': 'value1', 'key2': 'value2'}}

編輯和澄清:

-我的目標是加載一個模塊,修改它,然后將它保存回一個可執行的python文件。這就是我反對pickle、json等的原因。

-重寫用例以進行澄清

-增加了我嘗試過的例子和更多信息

總結

以上是生活随笔為你收集整理的python怎样导出py文件_导出python模块(到字符串或py文件)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。