Python数据转换

我正在寻找一种python解决方案来转换输入文件并将其原样读取为用PYTHON3编写的程序。


我的输入文件包含以下数据:


    { "h" : ["a","c","e"],

      "d" : ["d", "a","g"],

      "e" : ["f", "a", "b", "c"],

      "b" : ["d","c"],

      "c" : ["g", "c","a"],

      "g" : ["w","x","y"]

    }

我尝试了以下


a)datafile = open("infile.txt","r").read()

错误消息:TypeError:字符串索引必须为整数


b)datafile = open("infile.txt","r").readline()

错误消息:TypeError:字符串索引必须是整数


c)datafile = open("infile.txt","r").readlines()

错误消息:TypeError:列表索引必须是整数或切片,而不是str


顺便说一句,我是Python的新手。


青春有我
浏览 173回答 2
2回答

临摹微笑

您现在应该已经在python中意识到了字典的优势,下面的代码将为您提供帮助。假设您的文件名为file1.txt现在,正如注释中提到的那样,您应该使用json库with open("file1.txt") as fp:     read=json.load(fp)现在打印读取将为您提供数据字典print(read)将打印您的字典{'g':['w','x','y'],'c':['g','c','a'],'e':['f','a', 'b','c'],'d':['d','a','g'],'h':['a','c','e'],'b':[ 'd','c']}注意:-不要忘记导入json。导入json重要这是一个非常简单的问题。请不要提出这样的问题并为他们赢得反对票

米琪卡哇伊

一种解决方案是:import astdatafile = open("infile.txt","r").read()values = ast.literal_eval(''.join(datafile.splitlines()))values['h']根据Evgeny的建议,您也可以使用json模块:import jsonjson_data=open('myfile.txt').read()data = json.loads(json_data)print(data['h'])
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python