zoukankan      html  css  js  c++  java
  • Python--数据类型之二 列表(List)、元组(Tuple)、字典(Dictionary)


     1、列表(List)和元组(Tuple)

     1、创建列表和元组

      两者语法非常相似,只是创建列表使用方括号,创建元组使用圆括号并且元组的元素不能修改,

    #列表
    list1 = ["yqq", "boy", 27]
    list2 = [1, 2, 3, 4]
    list3 = ["a", "b", "c"] 
    #元组
    tup1 = ('Google', 'W3CSchool', 1997, 2000)
    tup2 = (1, 2, 3, 4, 5, 6, 7 )

      2、列表和元组切片

    格式:list[n, m]

      n: 提取部分的第一个元素的编号。

      m: 分片剩余部分的第一个元素的编号。

      第一个是分片的开始,m-n 是分片的个数(n:包含在分片中,m不包含字啊分片中)
    list = [1,2,3,4,5,6,7,8,9,10]
    print(list[3:6]) #[4,5,6]
    print(list[-3:]) #[8,9,10]
    
    tuple = ('crazyit', 20, 5.6, 'fkit', -17)
    print(a_tuple[1: 3]) # (20, 5.6)
    print(a_tuple[-3: -1]) # (5.6, 'fkit')

      3、列表和元组删除元素

    list1 = ['physics', 'chemistry', 1997, 2000];
    del list1[2]
    print(list1) #['physics', 'chemistry', 2000]

      4、list() 函数和tuple() 函数

      list() 函数可用于将元组、区间(range)等对象转换为列表,而tuple()函数是将列表、区间(range)等对象转换为元组

    a_tuple = ('crazyit', 20, -1.2)
    a_list = list(a_tuple)# 将元组转换成列表
    print(a_list)
    a_range = range(1, 5)# 使用range()函数创建区间(range)对象
    print(a_range) # range(1, 5)
    b_list = list(a_range)# 将区间转换成列表
    print(b_list) #[1, 2, 3, 4]
    
    a_list = ['crazyit', 20, -1.2]
    a_tuple = tuple(a_list)# 将列表转换成元组
    print(a_tuple)
    a_range = range(1, 5)# 使用range()函数创建区间(range)对象
    print(a_range) # range(1, 5)
    b_tuple = tuple(a_range)# 将区间转换成元组
    print(b_tuple) #[1, 2, 3, 4]

    2、字典(Dictionary)

     1、字典创建及格式

      字典是由花括号括起来的包含,key : value 两部分。键必须是唯一的,但值则不必,值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。

    d = {key1 : value1, key2 : value2 }#格式
    dict = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'}#实例

      2、访问字典的值

      通过 key 访问 value

    dict = {"name":"yqq", "age":27}
    print(dict["name"],dict["age"]) 

      3、增加、修改字典和删除字典或者元素

      如果要为 dict 添加 key-value 对,只需为不存在的 key 赋值即可,而修改只需要通过key 来修改值就好

    #增添
    scores['数学'] = 93
    scores[92] = 5.7
    print(scores) # {'语文': 89, '数学': 93, 92: 5.7}
    #修改
    dict = {"name":"yqq", "age":27}
    dict["age"] =25
    print(dict)  # {'name': 'yqq', 'age': 25}
    #删除
    dict = {'Name': 'W3CSchool', 'Age': 7, 'Class': 'First'}
    del dict['Name'] # 删除键 'Name'
    dict.clear()     # 删除字典
    del dict         # 删除字典

      4、字典的遍历

      遍历键、遍历值、遍历项、遍历键值对

    dict =  {'name': 'yqq', 'school': 'bj', 'age': 25}
    
    for key in dict.keys():
        print(key)
    # age
    # name
    # school
    for value in dict.values():
        print(value)
    # 25
    # yqq
    # bj
    for item in dict.items():
        print(item)
    # ('age', 25)
    # ('name', 'yqq')
    # ('school', 'bj')
    for key,value in dict.items():
        print("key=%s"%key,"value=%s"%value)
    # key=age value=25
    # key=name value=yqq
    # key=school value=bj

      发现遍历的时候并不是从头开始,而是从key的首字母最低开始。

  • 相关阅读:
    linux下解除端口占用
    设计模式(二)观察者模式
    设计模式(一) 策略模式
    loj #6235. 区间素数个数
    loj #2013. 「SCOI2016」幸运数字
    loj #6014. 「网络流 24 题」最长 k 可重区间集
    loj #6013. 「网络流 24 题」负载平衡
    loj #2255. 「SNOI2017」炸弹
    loj #2051. 「HNOI2016」序列
    loj #6122. 「网络流 24 题」航空路线问题
  • 原文地址:https://www.cnblogs.com/ncne/p/10947049.html
Copyright © 2011-2022 走看看