我正在开发一个程序,我需要为其存储用户默认值,并且用户还应该可以选择修改默认值,以供将来使用该程序.因此,基本上,我有一个模块来管理默认参数和程序的其他方面,这些方面需要存储和稍后检索某些部分.例如,要管理默认参数,我在模块中有一个文件params.py来管理params.txt. python文件params.py本质上包含两个函数:(1)get_default_param(param_name)和(2)set_default_param(param_name).
params.txt文件包含以下内容:
NDIV: 120
EXT: txt
UNITS: cm/s2
AM: 1.0, 1.0, 1.0, 1.0
params.py文件包含:
def get_default_param_values():
default_val = {}
# Get params function
with open("data/defaults/params.csv") as f1:
for line in f1:
split_line = line.split(':')
default_val[split_line[0]] = [x.strip(" ") for x in split_line[1].strip('\n').split(',')]
return default_val
因此,在我的main.py程序中,我将params.py称为默认文件夹中的数据包中的文件,
from data.defaults.params import get_default_param_values
default_values = get_default_param_values()
for i in range(0,1000):
#
# use default_values in the program. These values also gets passed down to other functions
#
如果不对它们进行修改,我可以方便地将它们放置在python文件中并导入变量.当我们需要前端的用户在稍后阶段对其进行修改时,最好的做法是什么?
另一个问题是键的某些值是数字.如何自动识别整数或十进制数字并将字符串转换为int / float?
解决方法:
是否必须将键值对存储在文本文件中?
如果是,则您已经完成的操作可能是一种方法.
如果没有,我建议您将其存储为JSON文件并将其作为python字典加载(此方法还可以避免int解析问题).
标签:text-parsing,text,python 来源: https://codeday.me/bug/20191024/1923405.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。