python中元组;字典;集合的内置方法以及它们的取值方式

元组及内置方法,字典及内置方法,集合及内置方法。

元组 tuple:与列表类似可以存多个值,但是不同的是元组本身不可以被修改。

我们知道列表是用中括号标识的,但是元组是用小括号标识的,但是真正的标识是逗号,也就是元组后面必须加逗号。

例如:

>>> y = (1,2,3)
>>> y
(1, 2, 3)
>>> y1 = 1,2,3  # 不加括号只加逗号输出也是元组,创建元组逗号是必须要加的。
>>> y1
(1, 2, 3)
>>> y2 = 1  # 没加逗号定义的就不是元组,此时输出为整型。
>>> y2
1  
>>> y3 = 1,  # 加上逗号之后此时输出为元组。逗号一定要加。
>>> y3  
(1,)  
元组先掌握的操作:
1、按索引取值(正向取+反向取):只能取
del: 删除
y = (1, 2, 3, 'a', 'b', [1, 2, 3])
print(y[0])
y[1] = 'hi'  # 报错 无法修改元组里不可变的值
y[-1] = 'hi'  # 报错 无法修改元组里不可变的值
y[-1][0] = '可以修改'  # 但是只能修改元组里列表内的值,列表是可变的。
print(y)
del y[-1][0]  # 也只能删除元组里列表内的值
print(y)

元组的切片取值,计算长度;in和not in;循环:

y = (1, 2, 3, 'a', 'b', [1, 2, 3])
print(y[::2])  # 步数为1取值
print(len(y))  # 元组内数值的个数
print("b" in y)  # b是否在元组y里
print("c" not in y)  # c是否不在元组y里
for i in y:  # 循环打印出元组y里的所有值
    print(i)

#输出结果如下:

(1, 3, 'b') 6 True True 1 2 3 a b [1, 2, 3]

定义:元组能存多个值,是有序不可变的。

                    字典及内置方法

字典dict:能存存储多组 key:value键值对 key是对value的描述 key通常情况下都是字符串

其实这个key只能是不可变类型,value可以是任意数据类型

d1 = {"name":"小明","statrue":180,"weight":185}
print(d1["name"])  # 访问字典里的值
print(d1["weight"])
d1["age"]=18  # 赋值语句当key不存在的情况下,会自动新增一个键值对
print(d1)
print(len(d1))  # 统计键值对个数
print("185"in d1)  # 判断185是否在字典d1里面,结果为False因为用户能操作的只有key。
print("weight"in d1)  # 判断key值weight是否在字典d1里面,结果为True

#
输出结果为:

小明
185 {'name': '小明', 'statrue': 180, 'weight': 185, 'age': 18} 4 False True

d
= {"name":"小明","name":"小红","name":"小芳","statrue":180,"weight":185} print(d) # 字典的key是不能重复的 要唯一标识一条数据;如果重复了 只会按照最后一组重复的键值对存储
#
输出结果为:

{'name': '小芳', 'statrue': 180, 'weight': 185}

删除字典里的元素:

d2 = {"name":"小明","statrue":180,"weight":185}
del d2["name"]  # 只删除键值对name

#
输出为:
{'statrue': 180, 'weight': 185} d3 = {"name":"小明","statrue":180,"weight":185} res = d3.pop("name") # 弹出仅仅是value res = d3.pop('age') # 当键不存在的时候直接报错 d4 = {"name":"小明","statrue":180,"weight":185} d4.clear() #删除字典里的所有键值对。

#输出结果为: {}

字典的定义形式:

d = {"name":"小军","age":18}
print(d,type(d))
d2 = dict (name="小军",age="18")
print(d2,type(d2))

#输出结果为:

{'name': '小军', 'age': 18} <class 'dict'>
{'name': '小军', 'age': '18'} <class 'dict'>
字典中键keys(),值values(),键值对items()
d1 = {"name":"小明","statrue":180,"weight":185} 
print(d1.keys())  # 取出字典中所有key值。
for k in d1.keys():  # 循环取出字典中所有key值。
     print(k)
print(d1.values())  # 取出字典中所有valuse值
for v in d1.values():  # 循环取出字典中所有valuse值
     print(v)
print(d1.items())  # 取出字典里的所有键值对。

# 输出结果为:

dict_keys(['name', 'statrue', 'weight'])
name
statrue
weight
dict_values(['小明', 180, 185])
小明
180
185
dict_items([('name', '小明'), ('statrue', 180), ('weight', 185)])

字典定义:存多个值,无序可变的

                    集合及内置方法:

可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。

# 定义集合;查看集合长度len;判断元素是否在集合里in 和not in
j = {1, 2, 3, 4, 5, 6,}
print(type(j))
j1 = set()  # 定义空集和
print(type(j1))
print(len(j))  # 查看长度。
print(6 in j)  # 判断6是在集合j里
print(6 not in j)  # 判断6不在集合j里


#输出结果为:

<class 'set'>
<class 'set'>
6
True
False

集合的运算

集合的目的是将不同的值存放到一起,不同的集合间用来做关系运算,无需纠结于集合中单个值

my = {9, 8, 7, 6, 5, 4, 3}
you ={1, 2, 3, 4, 5, 6, 7}
print(my & you)  # 输出my和you共同拥有的数字 &
print(my - you)  # 输出my单独拥有的数字  -
print(you - my)  # 输出you单独拥有的数字
print(my ^ you)  # 输出不是my和you共同拥有的数字 ^
print(my | you)  # 输出my和you拥有的所有数字  |


#  输出结果为:

{3, 4, 5, 6, 7}
{8, 9}
{1, 2}
{1, 2, 8, 9}
{1, 2, 3, 4, 5, 6, 7, 8, 9}

集合add:往集合里添加元素

fruits = {"apple", "banana", "cherry"}
fruits.add("orange")  # 把orange添加到集合fruist里面。
print(fruits)

#输出结果为:

{'banana', 'apple', 'orange', 'cherry'}



fruits = {"apple", "banana", "cherry"}
fruits.add("apple")  # 已存在的元素不会再添加进去。
print(fruits)

# 输出结果为:

{'apple', 'banana', 'cherry'}

集合:可以包含多个元素,用逗号分割,每个元素必须是不可变类型,没有重复的元素。

原文地址:https://www.cnblogs.com/sweet-i/p/11134596.html