一.应用背景
1.程序代码太多,更改变量值找变量位置麻烦
2.应用需要,上位机更改TXT文件变量值测试、调整,不需要操作下位机
二.代码
1.Python文件
with open('variables.txt','r') as file:
l=file.readlines() #按行读取TXT文件,都是字符串类型
d={}
for i in l:
s=i.replace('\n','') #去除换行符
s0=s.split(sep=':') #以:分割字符串,左边是键,右边是值。同样都是字符串类型
if '"' in s0[1]:
s0[1]=s0[1].replace('"','') #字符串存在双引号,说明原本的值就是字符串类型。去掉多余的双引号
else:
s0[1]=int(s0[1]) #说明原本值是整型,强制类型转换
d[s0[0]]=s0[1] #键值对添加到字典中
print(d)
#变量赋值
DST_IP =d['DST_IP']
DST_PORT = d['DST_PORT']
Local_IP = d['Local_IP']
CHUNK = d['CHUNK']
CHANNELS = d['CHANNELS']
RATE = d['RATE']
RECORD_SECONDS = d['RECORD_SECONDS']
time_long =d['time_long']
voice = d['voice']
rank1 = d['rank1']
rank2 = d['rank2']
rank3 = d['rank3']
print(DST_IP,DST_PORT,Local_IP,CHUNK,CHANNELS,RATE,
RECORD_SECONDS,time_long,voice,rank1,rank2,rank3)2.txt文件
DST_IP:"192.168.31.17"
DST_PORT:12321
Local_IP:"192.168.31.35"
CHUNK:512
CHANNELS:1
RATE:16000
RECORD_SECONDS:1
time_long:60
voice:1
rank1:40
rank2:50
rank3:703.输出结果
{'DST_IP': '192.168.31.17', 'DST_PORT': 12321, 'Local_IP': '192.168.31.35', 'CHUNK': 512, 'CHANNELS': 1, 'RATE': 16000, 'RECORD_SECONDS': 1, 'time_long': 60, 'voice': 1, 'rank1': 40, 'rank2': 50, 'rank3': 70}
192.168.31.17 12321 192.168.31.35 512 1 16000 1 60 1 40 50 70三.说明
a.关键字、整型值全部不加引号。
b.只有字符型的值加双引号。
c.英文符号。
d.键值对可多不可少,多了py文件中也读不到。
e.关键字不可重复。
f.要改open内的文件路径及文件名
版权声明:本文为weixin_43956764原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。