我不知道你会用这些数据做什么,但根据你提供的信息,这似乎很有用。至少它可以给你一个想法,你可以随意操作转换器。
______exampledata.txt
{a{a{hello world}}}
{a{b{stack over flow}}}
{b{a{example data 1}}}
{b{b{data example 2}}}
______converter.py
import os
fo = open("exampledata.txt", "r")
data = fo.read()
fo.close()
data = data.split("\n")
fo = open("converteddata.txt", "w")
for line in data:
line = line.split("{")
if len(line) < 2:
break
fo.write("data['")
fo.write(line[1]+"-"+line[2]+"'] = [")
splitData = line[3].split("}}}")[0]
splitData = splitData.split(" ")
for d in splitData:
fo.write("'"+d+"', ")
fo.seek(-2, os.SEEK_END)
fo.truncate()
fo.write("]\n")
______converteddata.txt(转换器将生成此文件)
data['a-a'] = ['hello', 'world']
data['a-b'] = ['stack', 'over', 'flow']
data['b-a'] = ['example', 'data', '1']
data['b-b'] = ['data', 'example', '2']
转换后数据的使用方法
data = dict()
data["a-a"] = ["hello", "world"]
data["a-b"] = ["stack", "over", "flow"]
data["b-a"] = ["example", "data", "1"]
data["b-b"] = ["data", "example", "2"]
val1 = raw_input("Please enter first parameter : ")
val2 = raw_input("Please enter second parameter : ")
index = raw_input("Please enter index : ")
print data[val1+"-"+val2][int(index)]
编辑:您不会将转换后的数据复制/粘贴到主项目中。如果您有大量数据,那么您的主项目文件看起来会非常糟糕。因此,您可以创建一个名为converteddata.py的文件。
data = dict()
data['a-a'] = ['hello', 'world']
data['a-b'] = ['stack', 'over', 'flow']
data['b-a'] = ['example', 'data', '1']
data['b-b'] = ['data', 'example', '2']
然后你可以像这样将它导入到你的主项目中
from converteddata import data
print data["a-a"][0]
replace('{', ':{')[1:]
- Tim{ }
中,但你想要它们变成[ ]
。 - Tim