お世話になります。現在のプログラムは、下記の通りです。
python
1# get_check_info.py 2 3# ------------ インポート設定 ------------ # 4 5lass ItemCheck(object): 6 def __init__(selfget_check_info.py, checking_items): 7 self.checking_items = checking_items 8 9 def checker(self): 10 # ["23456"["sumitomo", "7654321"]] 11 # keyは"2345" 12 # v 13 for key, value in self.checking_items.items(): 14 plat = value[0] 15 id = value[1] 16 # ------------ ----------- # 17 if plat == "xxx": 18 print(id) 19 """ 20 長いコード 21 """ 22 elif plat == "yyy": 23 print(id) 24 """ 25 長いコード 26 """ 27 28 else: 29 continue
長いこコードは、凄く長くなる場合があり、
下記のプログラムの様にしたいのです。
python
1#get_check_info2.py 2 3# ------------ インポート設定 ------------ # 4import func_def 5 6checking_items = {"23456"("sumitomo", "7654321")} 7 8class ItemCheck(object): 9 def __init__(self, checking_items): 10 self.checking_items = checking_items 11 12 def checker(self): 13 # ["23456"["sumitomo", "7654321"]] 14 # key = "23456" 15 # value[0] = "sumitomo" 16 # value[1] = "7654321" 17 for key, value in self.checking_items.items(): 18 plat = value[0] 19 id = value[1] 20 # ------------ ----------- # 21 for row in func_def.stock_dict: 22 if row == plat: 23 print("-----------------") 24 print(id) 25 func_def.company(plat, id) 26 27 else: 28 continue 29
以上が、隠蔽したいプログラムです。本当は、もっと長いです。
保守の観点から隠蔽したいのです。
get_check_info2.pyから、func_defをインポートしていますが、下記の様なプログラムを考えています。
python
1# func_def.py 2 3stock_dict = ["sumitomo", "ufj"] 4 5class Company(object): 6 def __init__(self, plat, id): 7 self.plat = plat 8 self.id = id 9 10 def inner_comp(self): 11 if self.plat == "sumitomo": 12 chk_info = Sumitomo(self.plat) 13 14class Sumitomo(object): 15 def __init__(self, plat, id): 16 self.plat = plat 17 self.plat = id 18 def func_sumitomo(self): 19 print("") 20 21###追加クラスが続きます。
func_def.pyは、変更可能PGです。
func_def.company(plat, idで、class Companyを用いて、sumitomo, ufjなどで得られる情報を、それぞれ取得したいです。
ここで質問ですが、結局、下記のPGでコントロールするかと思います。
この方針で良いでしょうか?
python
1 if self.plat == "sumitomo": 2 chk_info = Sumitomo(self.plat) 3
もっと、良いアイデアは、ないでしょか?
ご指導、ご鞭撻の程、よろしく、お願い申しあげます。
敬具
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。