• python元组和字典的简单学习


    元组(tuple)

    用圆括号()标识,定义元组后,元组元素不可修改。如果想修改元组只能重新定义元组。

    因为元组不可更改,所以也没有增删改等用法,主要语法就是访问元组元素,遍历元组。

    访问元组元素:

    1 tuple1 = (1, 2, 3, 4)
    2 print(tuple1)
    3 print(tuple1[0])    # 虽然元组是用(),但是当使用索引时还是使用tuple[]。

    输出结果:

    (1, 2, 3, 4)
    1

    遍历元组:

    用while循环遍历:

    1 index = 0
    2 while index < len(tuple1):
    3     print(tuple1[index])
    4     index += 1

    输出结果:

    1
    2
    3
    4

    用for循环遍历:

    1 tuple1 = (1, 2, 3, 4)
    2 for i in tuple1:
    3     print(i)

    字典(dictionary

    是一系列键值对,包括在花括号内({}),每个对之间用逗号隔开,键必须是唯一的,值则不必。

    字典的增删查改:

      (1)添加键值对

    1 dic_people = {'name': 'abc', 'color': 'yellow'}
    2 print(dic_people)
    3 
    4 dic_people['old'] = 18           # 添加键
    5 dic_people['language'] = 'English'    # 添加值
    6 
    7 print(dic_people)

    输出结果:

    {'name': 'abc', 'color': 'yellow'}
    {'name': 'abc', 'color': 'yellow', 'old': 18, 'language': 'English'}

      (2)删除键值对

    1 dic_people = {'name': 'abc', 'color': 'yellow', 'old': 18, 'language': 'English'}
    2 print(dic_people)
    3 
    4 del dic_people['language']    # 字典使用del语句删除一对键值对
    5 
    6 print(dic_people)

    输出结果:

    {'name': 'abc', 'color': 'yellow', 'old': 18, 'language': 'English'}
    {'name': 'abc', 'color': 'yellow', 'old': 18}

      (3)查询字典

    1 dic_people = {'name': 'abc', 'color': 'yellow', 'old': 18, 'language': 'English'}
    2 print(dic_people)
    3 # print(dic_people[0])   # 字典不能通过索引小标来访问
    4 print(dic_people['old']) 
    5  # print(dic_people[18]) # 只能通过键值查询key值,不能通过key值查询

    输出结果:

    {'name': 'abc', 'color': 'yellow', 'old': 18, 'language': 'English'}
    18

      (4)修改字典

    1 dic_people = {'name': 'abc', 'color': 'yellow', 'old': 18, 'language': 'English'}
    2 print(dic_people)
    3 
    4 dic_people['old'] = 20
    5 print(dic_people)

    输出结果:

    {'name': 'abc', 'color': 'yellow', 'old': 18, 'language': 'English'}
    {'name': 'abc', 'color': 'yellow', 'old': 20, 'language': 'English'}

    遍历字典

      (1)遍历所有的键值对

    使用dic.items()

    1 dic_people = {'name': 'abc', 'color': 'yellow', 'old': 18, 'language': 'English'}
    2 
    3 for key,value in dic_people.items():
    4     # print(key1, value1)
    5     # print(key1 + ':'+ value1)     # 注意:使用加号(+)会出错,因为dic_people中old的值是int型
    6        print(key, ':', value)

    输出结果:

    name : abc
    color : yellow
    old : 18
    language : English

      

      (2)遍历所有的键值

    使用dic.keys()

    1 dic_people = {'name': 'abc', 'color': 'yellow', 'old': 18, 'language': 'English'}
    2 
    3 for key in dic_people.keys():
    4     print(key)

    输出结果:

    name
    color
    old
    language

      (3)遍历所有的value值

    使用dic.values()

    1 dic_people = {'name': 'abc', 'color': 'yellow', 'old': 20, 'language': 'English', 'length': 18}
    2 for value in dic_people.values():
    3     print(value)

    输出结果:

    abc
    yellow
    18
    English
    18

    从上面的示例可以看到输出结果中有重复项,如果我们不想要重复项怎么办?可以使用set(dic.values())

    1 dic_people = {'name': 'abc', 'color': 'yellow', 'old': 18, 'language': 'English', 'length': 18}
    2 
    3 for value in set(dic_people.values()):   # 去掉重复项
    4     print(value)

    输出结果:

    English
    18
    abc
    yellow

    从上面的几个实例可以看出都是for循环加上字典调用函数实现遍历相应的值,那么不调用函数可以for循环遍历吗?

    1 dic_people = {'name': 'abc', 'color': 'yellow', 'old': 18, 'language': 'English'}
    2 for key in dic_people:
    3     print(key)

    输出结果:

    name
    color
    old
    language

    可以看出不调用函数的结果是遍历key值,为什么会这样呢?这就涉及到for循环的本质了,在后面的迭代器中会讲的for循环的本质是什么。

  • 相关阅读:
    V-Ray Material Library材质名称翻译
    3dMax常用快捷键
    3dMax笔记(韵湖)
    background-size拉伸背景图片
    CSS实现子元素水平垂直居中的6种方式
    JS简易实现“最小栈”
    JS种Array原型方法reverse的模拟实现
    JS数组去重的3种方式
    encodeURIComponent和encodeURI有什么区别
    CSS中的度量单位(px/em/rem/vm/vh/...)
  • 原文地址:https://www.cnblogs.com/zuoxide/p/10512828.html
Copyright © 2020-2023  润新知