如何使用python将指定文件里的数据读取到字典

如何使用python将指定文件里的数据读取到字典,第1张

list_dict_all = []               #创建一个空列表,全局变量,用来存放字典

def AddtoDict(str_1):            # 定义一个函数,功能:把文件里面的内容添加到字典中

   list_str1 = str_1.split(",")  # 读取的行内容以字符串的形式显示出来, 使用‘,’分隔字符串

   line_str = []                 # 创建一个空列表,用来接收去掉'\n'的行字符串

   for i in list_str1:

       x = i.strip("\n")

       line_str.append(x)

   # print(line_str)

   dict_all = {}                         # 创建一个空字典

   for item in line_str:                 # 遍历列表中的行内容,列表中有3个元素

       if item[0:3] == "url":            # 列表中的元素,前3个字符是否等于“url”

           dict = {item[0:3]: item[4:]}     # dict = {'url':'119.23.241.154:8080/futureloan/mvc/api/member/login'}

           dict_all.update(dict)            # 添加dict到空字典dict_all中

           # print(dict_all)

       else:

           dict = {item.split(":")[0]: item.split(":")[1]}  # 除url外,取其他数据key, value到字典中

           dict_all.update(dict)

   list_dict_all.append(dict_all)                     # 将字典添加到list列表中

def list_dict(file_1):

    file = open(file_1, "r+")

    while True:

        line = file.readline()

        if line:

            AddtoDict(line)

        if not line:

            break

    file.close()

    print(list_dict_all)

list_dict("test_date.txt")        # 传入文件路径及名称即可实现将文件中的内容以[{}, {}....]的形式输出

test_date.txt里面的内容

url:xx.xx.xx.xx:8080/futureloan/mvc/api/member/login,mobilephone:xxxxxxxxxxx,pwd:123456

url:xx.xx.xx.xx:8080/futureloan/mvc/api/member/login,mobilephone:xxxxxxxxxxx,pwd:123456

python如何将列表中的数据内容提取出来放到一个字典里在屏幕上按学号从小到大,1 创建一个列表lst和一个空字典dic,列表当中加入要求中的数字,字典为我们存放将来提取到的数字做准备,代码: lst =[10,20,30,40,50,60,70,80,90,99] dic ={} 2 利用for循环提取列表lst当中的所有元素,也就是那些数字。

字典是一种hash表,即有key,和key键对应下的value

比如说我要初始化一个字典

phonebook={'Alice':'3241','Beth':'9274','Ceil':'3258'}

这样这本字典就有三对项,分别有键(key)和对应的值(value)组成

比如这里Alice,Beth,Ceil都是key

对应的value则分别为3241,9274,3258

key和value之间用冒号(:)隔开,项之间用逗号(,)隔开,整个字典由一对大括号括起来。

比如你要查询beth的电话号码,就可以用这条语句:

print phonebook['Beth']

结果则为9274

现在对字典的基本概念熟悉了吧?!

然后回答下你这个问题。

你要把列表中的元素添加到字典中,那么必须提供key值或value来和d中的{'a','b','c'}对应。

一楼就是其中一个解法,不过有些瑕疵,正确的应该是:

a=dict(zip(d, ['']*3))

a的值即为{'a':'', 'b':'', 'c':''}

此时列表中的元素a,b,c作为key,value的值我们暂定为空


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11963248.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-20
下一篇2023-05-20

发表评论

登录后才能评论

评论列表(0条)

    保存