zoukankan      html  css  js  c++  java
  • python json

    1、json是一个字符串,只不过长得像字典

    使用json需要引入json模块

    import json

    定义一个json串:

    user_info='''{''nhy":"123456","lxy":"456789"}'''

    外面三引号,大括号,双引号,冒号,逗号。双引号不可用单引号代替。

    校验json格式是否正确的网站:www.bejson.com

    2、把json串转成字典

    user_dic=json.loads(user_info)

    loads是和字符串有关的,可以读取字符串

    3、把字典转成json串

    stu_str=json.dumps(stu_info)

    1 stu_info={'laowang':{'cars':['BMW','Ben-z]}}
    2 stu_str=json.dumps(stu_info)
    3 print(stu_str)
    1 fw=open('stu.txt','w')
    2 fw.write(stu_str)
    3 fw.close()

    dumps需要自己手动read一次,而dump不需要,它会自动帮你读

    4、dump和load

    json.dump()    #操作一个文件,不需要你自己write,它直接帮你写进去

    json.dump()接受两个实参:要存储的数据以及可用于存储数据的文件对象。

    1  stu_info={'laowang':{'cars':['BMW','Ben-z']}} #定义一个字典
    2  f=open('stu.json') #打开一个json文件
    3  res=json.dump(stu_info,f,indent=4)    #不需要再写一次文件,json帮你写入,indent=4表示帮你写4个缩进
    4              # 存储数据,可用于存储的文件对象

     

    json.load()     #操作一个文件,不需要你自己read,它直接帮你读,只能读文件

    1  f=open('stu.json') #打开一个json文件
    2  res=json.load(f)    #直接从文件里拿,不需要再赌一次文件,json帮你读
    3  print(res)

     5、练习

    注册验证:

     1 import json  #引入json模块
     2 f=open('users.txt','a+')  #打开users文件
     3 f.seek(0)
     4 all_user=json.load(f)   #把文件读取出来的内容放到字典中
     5 
     6 #注册
     7 for i in range(3):
     8     u = input('user:').strip()
     9     p = input('p:').strip()
    10     cp = input('cp:').strip()
    11     if not u or not p:  
    12         print('账号、密码不能为空')
    13     elif u in all_user:
    14         print('该用户已经被注册!')
    15     elif u not in all_user and cp==p:
    16         all_user[u]=p
    17         break
    18 f.seek(0)
    19 f.truncate()    #清空文档内容
    20 json.dump(all_user,f)    #将all_user内容写进文件中
    21 f.close()

     

  • 相关阅读:
    每日学习
    每日学习——iframe标签伪造ajax
    每日总结
    LA 3667 Ruler
    hdu 2066 一个人的旅行 (dij+heap)
    LA 3507 Keep the Customer Satisfied (Greedy)
    hdu 2527 Safe Or Unsafe
    LA 4636 Cubist Artwork
    hdu 4514 湫湫系列故事——设计风景线(树DP)
    LA 4328 Priest John's Busiest Day (Greedy)
  • 原文地址:https://www.cnblogs.com/miyuki/p/9182841.html
Copyright © 2011-2022 走看看