day11-作业

  1. 提取data.json中的数据,将每条数据中的name、text、love和comment信息。并且保存到另外一个json文件中
import json

new_datas = []
with open('./files/data.json', 'r', encoding='utf-8')as f:
     for item in json.load(f)['data']:
         new_data = {'name': item['name'],'text':item['text'],'love': item['love'],'comment': item['comment']}
         new_datas.append(new_data)
with open('./files/new_data.json', 'w', encoding='utf-8')as f:
     json.dump(new_datas, f)
  1. 统计data.json中comment数量超过1000的个数
count = 0
with open('./files/data.json', 'r', encoding='utf-8')as f:
    for item in json.load(f)['data']:
         if int(item['comment']) > 1000:
            count += 1
print('统计data.json中comment数量超过1000的个数:%d'%(count))
  1. 将data.json文件中所有点赞数(love)对应的值超出1000的用k来表示,例如1000修改为1k, 1345修改为1.3k
with open('./files/data.json', 'r', encoding='utf-8')as f:
    new_data = json.load(f)
    for item in new_data['data']:
         if int(item['love']) > 1000:
             item['love'] = str(round(int(item['love']) / 1000, 1))+'k'
with open('./files/data.json', 'w', encoding='utf-8')as f:
    json.dump(new_data, f)

  1. 写猜数字游戏,如果输入有误,提示重新输入,直达输入正确为止。比如:输入数字的时候没有按要求输入,提示重新输入
import random
value = random.randint(1,100)
# print(value)

while True:
#
    try:
        number = int(input('请猜一个数字:'))
        # number = int(input('请猜一个数字:'))
        if number > value:
             number = int(input('大了,请重新输入:'))
        elif number < value:
            number = int(input('小了,请重新输入:'))
        else:
            print('恭喜,猜测正确!')
            break

        # else:
         #     number = int(input('输入错误,请重新输入:'))
#
    except:
        number = int(input('数据不符合要求,请重新输入整数:'))
  1. 写学生管理系统的添加学生功能(数据需要本地化),要求除了保存学生的基本信息以外还要保存学生的学号,但是学号需要自动生成,
    生成原则:
    添加第一个学生对应的学号是:py001
    第二次添加的学生的学号是:py002
    如果前面的学生因为各种原因被移除了,那后面添加学生的时候原则不变,就是比如上次已经添加到py012,那么前面不管有没有删除情况,再次添加学生的学号是py013
with open('./files.json', 'r', encoding='utf-8') as f:
      students = json.load(f)
# class1 = {}
# students = []
student = {}
id_num = students[len(students)-1]['id_num']
print(id_num)
#
name = input('请输入姓名:')
age = input('请输入年龄:')
tel = input('请输入电话:')
id_num += 1
id = 'py' + str(id_num).rjust(3, '0')
student['id_num'] = id_num
student['id'] = id
student['name'] = name
student['age'] = age
student['tel'] = tel
students.append(student)

with open('./files.json', 'w', encoding='utf-8')as f:
      json.dump(students, f)

你可能感兴趣的:(day11-作业)