热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

6.11作业5:动态生成字典

现有一个列表li[1,2,3,’a’,’b’,4,’c’],有一个字典(此字典是动态生成的,你并不知道它里面有多少键值对,所以使用dic{}模拟此字典);现在需要完成这样的
'''现有一个列表li = [1,2,3,’a’,’b’,4,’c’],
有一个字典(此字典是动态生成的,你并不知道它里面有多少键值对,
所以使用dic={}模拟此字典);现在需要完成这样的操作:
如果字典中没有‘k1’这个键,那就创建这个‘k1’键和其对于的值(该键对应的值设置为空列表),
并将列表li中的索引为奇数对应的元素,添加到‘k1’这个键对应的空列表中。
如果该字典中有‘k1’这个键,且k1对应的value是列表类型,那就将列表li中的索引位为偶数对应的元素,
添加到‘k1’这个键对应的值中。'''
def fun1(dic):
    li = [1,2,3,'a','b','4','c']
    k1 = 'k1'
    myeven = []
    myodd = []
    for i in range(len(li)):
        if i % 2 == 0:
            myeven.append(li[i])
            continue
        else:
            myodd.append(li[i])
    if k1 not in dic.keys():
        dic[k1] = []
        for args in myodd:
            dic[k1].append(args)
    else:
        for args in myeven:
            dic[k1].append(args)
    print(dic)
dic1 = {1:'a',2:'b','k1':['c']}
fun1(dic1)


#  ''.join(list)当list里 有数值型元素时 不能用此方法把列表改为字符串形式
# 可遍历list,然后把每个元素改为str形式:如下所示
'''
for i in range(len(li)):
    li[i] = str(li[i])
print(li)


for args in li:
    args = str(args)
print(li)
'''
# 然后在用join拼接



推荐阅读
  • Python处理Word文档的高效技巧
    本文详细介绍了如何使用Python处理Word文档,涵盖从基础操作到高级功能的各种技巧。我们将探讨如何生成文档、定义样式、提取表格数据以及处理超链接和图片等内容。 ... [详细]
  • 社交网络中的级联行为 ... [详细]
  • 本文将探讨2015年RCTF竞赛中的一道PWN题目——shaxian,重点分析其利用Fastbin和堆溢出的技巧。通过详细解析代码流程和漏洞利用过程,帮助读者理解此类题目的破解方法。 ... [详细]
  • java文本编辑器,java文本编辑器设计思路
    java文本编辑器,java文本编辑器设计思路 ... [详细]
  • 本文介绍了一种根据目标检测结果,从原始XML文件中提取并分析特定类别的方法。通过解析XML文件,筛选出特定类别的图像和标注信息,并保存到新的文件夹中,以便进一步分析和处理。 ... [详细]
  • 本文详细介绍了Python中列表的创建、访问、修改、排序及遍历等基本操作,帮助初学者快速掌握列表这一重要数据结构。 ... [详细]
  • 本文将详细探讨Linux pinctrl子系统的各个关键数据结构,帮助读者深入了解其内部机制。通过分析这些数据结构及其相互关系,我们将进一步理解pinctrl子系统的工作原理和设计思路。 ... [详细]
  • 本文详细介绍了Python中的可迭代对象、迭代器和生成器的概念及实现方式。通过实例代码展示如何创建和使用这些对象,帮助读者更好地理解和掌握其原理。 ... [详细]
  • 本文介绍了如何利用Python进行批量图片尺寸调整,包括放大和等比例缩放。文中提供了详细的代码示例,并解释了每个步骤的具体实现方法。 ... [详细]
  • PHP 实现多级树形结构:构建无限层级分类系统
    在众多管理系统中,如菜单、分类和部门等模块,通常需要处理层级结构。为了高效管理和展示这些层级数据,本文将介绍如何使用 PHP 实现多级树形结构,并提供代码示例以帮助开发者轻松实现无限分级。 ... [详细]
  • 在 Android 开发中,通过 Intent 启动 Activity 或 Service 时,可以使用 putExtra 方法传递数据。接收方可以通过 getIntent().getExtras() 获取这些数据。本文将介绍如何使用 RoboGuice 框架简化这一过程,特别是 @InjectExtra 注解的使用。 ... [详细]
  • 深入解析Spring启动过程
    本文详细介绍了Spring框架的启动流程,帮助开发者理解其内部机制。通过具体示例和代码片段,解释了Bean定义、工厂类、读取器以及条件评估等关键概念,使读者能够更全面地掌握Spring的初始化过程。 ... [详细]
  • 深入解析MySQL中的七种JOIN查询
    本文详细介绍了MySQL中常用的七种JOIN查询方法,包括内连接、左外连接、右外连接、全外连接以及排除连接等,并通过实例进行说明。 ... [详细]
  • 本文探讨了如何在Classic ASP中实现与PHP的hash_hmac('SHA256', $message, pack('H*', $secret))函数等效的哈希生成方法。通过分析不同实现方式及其产生的差异,提供了一种使用Microsoft .NET Framework的解决方案。 ... [详细]
  • 本文详细介绍如何使用 Python 集成微信支付的三种主要方式:Native 支付、APP 支付和 JSAPI 支付。每种方式适用于不同的应用场景,如 PC 网站、移动端应用和公众号内支付等。 ... [详细]
author-avatar
迷茫的路人甲-
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有