1.字典

    Python内置了字典的支持,也就是java中的map。使用键-值对(Key,Value)的形式存储数据,其中Key必须是唯一的,而value值可以重复出现,Key的类型必须是不可变的,如数字、字符串。元组,而Value可以是任何类型,如列表,字典,字符串等。

    和list对比优点是能够极快的查询到value,而缺点是暂用较多的内存

    举个栗子:

使用字典,获取人的年龄,只需要让姓名和年龄对应上就可以直接获取。如果用list实现,获取到某一个人的年龄,需要循环列表。

    其中Python的字典和java中map不同的是,python是动态类型语言,所以Python的字典(Key-Value)类型都是可变的。

    语法格式:

d = {key1 : value1, key2 : value2 }

map = {'小明': 23, '小李': 20, '小丽': 22}

map2 = {'小明': '男', '小李': 20, 23: '小明'}

  字典的取值方法:

只需要通过key就可以取到值,需要注意的是,当key不存在时,会报异常

map['小明']

python values()方法 python里的value_字符串

想要避免Key不存在的异常,有两种方式,一种是使用'in'判断Key是否存在

if '小明' in map.keys():
    print(map['小明'])
else:
    print("Key不存在")

另外一种方式是通过字典提供的get()方法,如果Key不存在,则返回None或者自己指定的值

python values()方法 python里的value_Python_02

字典的操作

python values()方法 python里的value_python values()方法_03

2.set

set和字典类似,但是set不储存Value,set可以理解成数学上的无序不重复数列。

python values()方法 python里的value_python values()方法_04

set的定义需要提供一组数列

python values()方法 python里的value_python values()方法_05


3.元组、列表

    元组和列表相似,不同之处在于元组是不可变的,而列表是可变的。

1)列表

    列表的定义:列表使用中括号定义

# 列表
list1 = [1, 3, 5, 7, 10]

list2 = ['赤', '橙', '红', '黄', '绿', '青', '蓝', '紫']

列表的操作

list1 = [1, 3, 5, 7, 10]
print(list1[0])  # 读第一个数 >>>1

print(list1)  # >>>[1, 3, 5, 7, 10]

list1[0] = 2  # 给第一个数重新赋值
print(list1)  # >>>[2, 3, 5, 7, 10]

list1.remove(2)  # 删除第一个2这个元素
print(list1)  # >>>[3, 5, 7, 10]

list1.append(10)  # 添加一个元素在最后
print(list1)  # >>>[3, 5, 7, 10, 10]

list1.insert(1, 4)  # 插入一个元素
print(list1)  # >>>[3, 4, 5, 7, 10, 10]



2)元组

    元组的定义:元组使用小括号定义

# 元组
tup1 = (1, 3, 5, 7, 10)

tup2 = ('赤', '橙', '红', '黄', '绿', '青', '蓝', '紫')
# 也可以不要小括号
tup3 = '个', '十', '百', '千'

# 当元组只有一个元素时,需要加上一个逗号,否则会被认为是一个运算符
# 如下所示 tupOne1 = (3)会被认为是整数3
tupOne1 = (3)
tupOne2 = (3,)

 元组的操作

由于元组是不可变的,所以当修改元组值时会报异常,因此元组可以认为是一个只读数列

python values()方法 python里的value_字符串_06

元组运算符(参考 菜鸟教程)

Python表达式

结果

描述

len((1,2,3))

3

计算元组长度

(1,2,3)+(4,5,6)

(1,2,3,4,5,6)

连接

('HI!'*4)

('HI!','HI!','HI!','HI!')

复制

3 in (1,2,3)

True

是否包含

for i in (1,2,3) :print(i, end=" ")

1 2 3

迭代