您好,登錄后才能下訂單哦!
本篇內容介紹了“Python如何劃分模塊”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
把規則部分的代碼,復制到新文件:rule.py,原來的代碼注釋或刪除。這里為了對比,DE8UG 在 08 號文件進行了注釋,見最后的代碼。
# rule.py
# author: DE8UG
# PROJECT: rengleme
rule = {
"濕垃圾": ["菜葉", "橙皮", "蔥", "餅干"],
"干垃圾": ["舊浴缸", "盆子", "海綿", "衛生紙"]
}
新建文件:handle_laji.py,把處理垃圾分類的函數復制到這里。
# handle_laji.py
# author: DE8UG
# PROJECT: rengleme
def reng_laji(rule_k, laji, ljt):
if rule_k == ljt['name']:
ljt['data'].append(laji)
def fenlei(laji, rule, ljt):
for k, v in rule.items():
print(k, v)
if laji in v:
print('找到了垃圾:', laji, k)
reng_laji(k, laji, ljt)
新建文件:handle_file.py,把處理文件的函數復制到這里。
# handle_file.py
# author: DE8UG
# PROJECT: rengleme
import json
# print('加載文件:', ljt_gan)
def load_data(filename):
with open(filename) as f:
data = json.load(f)
return data
# 用函數封裝寫文件的代碼
def save_to_file(filename, data):
with open(filename, 'w') as f:
json.dump(data, f)
把 08 文件的已經移除的代碼刪除(我這里為了對比僅做了注釋),然后在最前面導入前面幾個新 py 文件。
注意:這幾個文件需要在一個目錄下,以免出現不同路徑找不到文件的情況。
import 導入相應的模塊后,后續的函數,需要用模塊.函數名
的方式調用。請自行補充所需函數名。然后進行代碼測試。沒有問題的話,我們今天新的改造就完成了。
# author: DE8UG
# 創建垃圾桶和垃圾
# 規則:k:v,一個k對應一個v,代碼表示用冒號分割
# 輸入
# 判斷
# 保存
# 函數
# 綜合
# 8 劃分模塊,轉移代碼
# import json
# 導入自建模塊
import rule
import handle_file, handle_laji
# rule = {
# "濕垃圾": ["菜葉", "橙皮", "蔥", "餅干"],
# "干垃圾": ["舊浴缸", "盆子", "海綿", "衛生紙"]
# }
# # print('加載文件:', ljt_gan)
# def load_data(filename):
# with open(filename) as f:
# data = json.load(f)
# return data
# def reng_laji(rule_k, laji, ljt):
# if rule_k == ljt['name']:
# ljt['data'].append(laji)
# def fenlei(laji, rule, ljt):
# for k, v in rule.items():
# print(k, v)
# if laji in v:
# print('找到了垃圾:', laji, k)
# reng_laji(k, laji, ljt)
# reng_laji(k, laji, ljt_shi)
# 用函數封裝寫文件的代碼
# def save_to_file(filename, data):
# with open(filename, 'w') as f:
# json.dump(data, f)
def main():
# 定義垃圾桶
ljt_shi = {
'name': "濕垃圾",
'data': []
}
ljt_gan = {
'name': "干垃圾",
'data': []
}
# 加載已有的垃圾
ljt_gan = handle_file.load_data('gan.json')
ljt_shi = handle_file.load_data('shi.json')
print('加載文件:', ljt_gan, ljt_shi)
# 扔垃圾
laji = input("輸入要扔的垃圾:")
print("垃圾:", laji)
# 分類
handle_laji.fenlei(laji, rule, ljt_gan)
handle_laji.fenlei(laji, rule, ljt_shi)
print('-'*20)
print(ljt_shi)
print(ljt_gan)
# 調用函數,保存到具體的垃圾桶文件
handle_file.save_to_file('gan.json', ljt_gan)
handle_file.save_to_file('shi.json', ljt_shi)
if __name__ == "__main__":
main()
“Python如何劃分模塊”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。