<Python>文字列をテキストファイルから読む
設定ファイルのサンプルです。
テキストファイルをディクショナリに入れて変数のように使用してみました。
settings.txt
# 設定ファイルのサンプル
item1 = バナナ #TABは消す item2 = りんご #より後ろはコメント扱い item3 = みかん
こちらがコードです。
# coding: utf-8 import os class Settings: ___settings = {"filename":""} def __init__(self, filename = "settings.txt"): self.___filename = filename self.___settings["filename"] = filename def settings(self, itemname): if itemname not in self.___settings: return "" else: return self.___settings[itemname] def loadsettings(self): cwd = os.getcwd() #実行中の場所 cwd_f = cwd + "/" + self.___filename print(cwd_f) if os.path.isfile(cwd_f) == True: # 他でFileShare.Read で開いていても読める with open(self.___filename, encoding='shift-jis') as f: #with open(self.___filename, encoding='utf-8') as f: test_data = f.read() else: print ("ふぁいるがないよ~!") return (False) if len(test_data) > 0 : lines = test_data.split('\n') for line in lines: s = line.replace("\t", "") #TABは消す if "#" in s: #より後ろはコメント csv = s.split("#") s = csv[0] if "=" in s: values = s.split("=") if values[0].strip() not in self.___settings: self.___settings[values[0].strip()] = values[1].strip() return (True) if __name__ == '__main__': app = Settings("settings.txt") if app.loadsettings(): print ("あいてむ1は" + app.settings("item1")) print ("あいてむ2は" + app.settings("item2")) print ("あいてむ3は" + app.settings("item3")) print ("あいてむ4は" + app.settings("item4")) print("End")
ご使用に関しては自己責任でよろしくお願い申し上げます。
2021年2月にpaizaラーニングでPythonを受講しました。
コメントでアドバイスをいただけると幸いです。
↓ほしい物リスト↓