Python 字典的字符串格式转化为字典格式,txt文本导入转化为字典格式,txt文本导入转化为Dataframe格式,字符串转化为字典

当读入txt文本是字符串时,而现在我们又想把它转化为字典时,则可以用json工具来转化,依赖模块为json模块

具体样例:

用open()读取文件内容:

input_file = open('example.txt','r',encoding='utf-8')#打开文件

#.readlines()读取全部内容
ceshi = input_file.readlines()
print(ceshi)

格式是列表,元素是字符串,而我们的目的是把元素转化为字典格式,并且把内容转化为Dataframe格式:

import json

re_lis = []
for lines in ceshi:
    l = lines.strip()
    #转化为字典
    user_dict = json.loads(l)
    re_lis.append(user_dict)
print(re_lis)

 转化为Dataframe:

import pandas as pd

df = pd.DataFrame(re_lis)
#显示前5行
df.head()

 注意

json 语法数组或对象之中的字符串必须使用双引号,不能使用单引号。当使用单引号时,通过eval()函数来解决,eval是Python的一个内置函数,这个函数的作用是,返回传入字符串的表达式的结果。想象一下变量赋值时,将等号右边的表达式写成字符串的格式,将这个字符串作为eval的参数,eval的返回值就是这个表达式的结果。

示例:

a = "{'drug': '络活喜', '适应症': '高血压'}"

dic_a = eval(a)
print(dic_a)
print(type(dic_a))

 总结:json.load()是字典的字符串格式转化为字典格式的常用方式,eval()针对单引号字典,但是安全性问题是我们需要注意的(其实也没啥)。

猜你喜欢

转载自blog.csdn.net/L_goodboy/article/details/124330338