六月徂徂 2021-06-03 14:30 采纳率: 33.3%
浏览 48
已采纳

Python列表,新手疑问

我的代码是图片里的,

运行结果是这样

但要求是这样,请问怎么改

 

  • 写回答

3条回答 默认 最新

  • CSDN专家-黄老师 2021-06-03 14:46
    关注

    你在第二循环里面用for k,v in d.items():可以获取键值对,判断k是否等于replay,然后对这个值执行遍历输出

    posts = {}
    print('论坛帖子')
    print('=' * 30)
    posts = [{'id': 1,
              'title': '测试标题1',
              'author': '匿名用户1',
              'publish': '2018-01-01',
              'content': '这里是帖子的测试内容1……',
              'replay': [{'publish': '2018-01-06', 'content': '这里是回复内容1……'},
                         {'publish': '2018-01-05', 'content': '这里是回复内容2……'}]},
             {'id': 2,
              'title': '测试标题2',
              'author': '匿名用户3',
              'publish': '2018-02-11',
              'content': '这里是帖子的测试内容2……',
              'replay': [{'publish': '2018-02-15', 'content': '这里是回复内容3……'},
                         {'publish': '2018-01-12', 'content': '这里是回复内容4……'}]}, ]
    
    for d in posts:
        for k, v in d.items():
            if k != 'replay' and k != 'content':
                print(k + ":" + str(v))
    
            elif k == 'content':
                print('-' * 30)
                print(v)
            else:
                for i in v:
                    print(f'回复<{i["publish"]}:{i["content"]}>')
    
        print('-' * 30)

    如果对你有帮助,可以点击我这个回答右上方的【采纳】按钮,给我个采纳吗,谢谢

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 echarts动画效果失效的问题。官网下载的例子。
  • ¥60 许可证msc licensing软件报错显示已有相同版本软件,但是下一步显示无法读取日志目录。
  • ¥15 Attention is all you need 的代码运行
  • ¥15 一个服务器已经有一个系统了如果用usb再装一个系统,原来的系统会被覆盖掉吗
  • ¥15 使用esm_msa1_t12_100M_UR50S蛋白质语言模型进行零样本预测时,终端显示出了sequence handled的进度条,但是并不出结果就自动终止回到命令提示行了是怎么回事:
  • ¥15 前置放大电路与功率放大电路相连放大倍数出现问题
  • ¥30 关于<main>标签页面跳转的问题
  • ¥80 部署运行web自动化项目
  • ¥15 腾讯云如何建立同一个项目中物模型之间的联系
  • ¥30 VMware 云桌面水印如何添加