• 元组与字典


    一、元组

    1、列表与元组的区别

    列表是可变的,元组是不可变的,列表的可变是指可以添加、删除元素,元组不可变是指不可以增加新的、删除已有的元素

    2、元组中的命令

    2.1、索引与查找相同元素

    index:查看元素的索引

    count:查找有多少个相同元素

    # index:查看元素的索引
    # count:查找有多少个相同元素
    list1=(5,45,3,53,5,79,3,5,35,6,7,76)
    print(list1.index(3))
    print(list1.count(5))

    元组里面的元素可以是字符串,也可以是数字,也可以是元组自己,也可以是列表

    注意:当元组里只有一个元素时后面需要缀逗号

    2.2、for循环

    自定义index,num,输出结果也可以自定义

    list1=(2,345,65,35,34,53)
    for index,num in enumerate(list1):
       if index==3 and num==35:
          print('ok')

    2.3、查找元组中的元素——print(tuple[索引][索引])

    [ ]中的数字为索引

    # 获取元组里面的元素
    tuple1=(2,345,65,35,"4,6,3,5")
    print(tuple1[4][2])

    二、字典

    1、字典特性

    1.1、字典时无序的

    1.2、字典是key-value的形式来存储的

    2、字典的关键字为dict

    代码为:dict={'name':'wp','age':'22"}

    强制转换:print(dict{})

    获取信息

    # 获取所有的key;
    dict1={'name':'wp','age':22,'city':'xian'}
    for item in dict1.keys():
        print(item)
    
    # 获取所有的value;
    for item in dict1.values():
        print(item)
    
    # 对字典进行循环;
    for key,value in dict1.items():
        print(key,':',value)

    3、获取value的值(一般是使用第二种)

    print(dict1.get("age"))
    print(dict1['age'])

    4、两个字典合并:update()——list中的extend()

    # 两个字典合并
    dict={'name':'wp','age':22,'city':'xian'}
    dict1={'six':'girl'}
    dict.update(dict1)
    print(dict)

    5、排序规则

    1、如果是数字,默认是从小到大

    2、如果是字符串,内部处理的思路是把字符串转为数字,然后和1的规则一样

    3、如果是多个字符串,比如aa,ab,那么这个规则是:

          A、aa和ab先比较第一个字符串,第一个相同,就比较第二个

          B、比较第二个,比如是字符串转为数字,规则与1相同

    4、把字符串转为数字,使用的内部函数是ord()

    5、排序必须是相同的数据类型(当出现数字与字母比较时,将数字放在引号内就可以了)

    6、字典排序的内部函数:sorted()

    6.1、dict.items()实现了把字典循环输出key和value

    6.2、把循环出的key和value分别放到一个新的列表中,第一位是key,第二位是value

    6.3、根据key参数后的lambda后的item[0]来进行排序,也就是按照key来进行排序

    print(dict(sorted(dict1.items(),key=lambda item:item[0])))

    复杂结构中信息查询操作

    7、获取所有信息后放置新的列表中

    输出一列在循环中,是会增进式输出,只到所查询的信息显示完,但在循环外仅显示横向类的查询信息

    8、实现字典的有序:从collections导入OrderedDict

    from collections import OrderedDict

    9、字符串与列表之间的转化

    9.1、字符串与列表的转换

    str1='Go,Java,Python'
    # 字符串转列表
    str_list=str1.split(',')
    print(str_list)
    # 列表转字符串 
    list_str=','.join(str_list) print(list_str)

    9.2、列表与元组的转换

    字符串不能直接转为元组,但是可以通过列表转换

    list1=[1,2,3]
    # 列表转为元组
    list_tuple=tuple(list1)
    print(list_tuple)
    
    # 元组转为列表
    tuple_list=list(list_tuple)
    print(tuple_list)

    9.3、整型与字符串转换

    age='22'
    # 字符串转整型
    str_int=int(age)
    print(str_int)
    
    # 整型转字符串
    int_str=str(age)
    print(int_str)

    9.4、列表与字典的转换

    list3=['a','b','c']
    # 列表转字典
    list_dict=dict(enumerate(list3))
    print(list_dict)
    
    # 字典转列表
    dict_list=list(list_dict.items())
    print(dict_list)

    10、获取列表中最大值和最小值

    # 获取一个列表中的最大值和最小值
    list2=[99,0,9,100,34,6,23,49,8]
    list2.sort()
    print(list2[0],list2[-1])

    三、练习——数据处理

    1、输出全部的城市信息

    2、输出除“全国”以外的城市信息

    strs=[]
    for item in dict1['zpData']:
        if item['name']!='全国':
            strs.append(item['name'])
    
    print(strs)

    3、输出除“全国”以外的城市拼音,并且不带/

    strs=[]
    for item in dict1['zpData']:
        if item['name']!='全国':
            print(item['url'].replace('/',''))
  • 相关阅读:
    IE无法打开internet网站已终止操作的解决的方法
    欢乐暑假-高校俱乐部暑期线上编程竞赛奖励机制
    pojAGTC(LCS,DP)
    ExtJs自学教程(1):一切从API開始
    Java实现BASE64编解码
    IOS框架概览
    DeviceIoControl的使用说明
    strcpy_s与strcpy的比較
    第三章 引擎的核心:渲染框架
    具体解释VB中连接access数据库的几种方法
  • 原文地址:https://www.cnblogs.com/Kaylee/p/16067812.html
Copyright © 2020-2023  润新知