赞
踩
(本文仅用于交流和学习)
Python 有 6 个序列的内置类型,但最常见的是列表和元组。
Python列表:列表是最常用的 Python 数据类型,它可以作为一个方括号[]内的逗号分隔值出现。
# 列表的数据项不需要具有相同的类型
list = [1,"a","啊"]
序列中的每个值都有对应的位置值,称之为索引,第一个索引是 0,第二个索引是 1,依此类推。
列表的数据项不需要具有相同的类型
列表都可以进行的操作包括索引,切片,加,乘,检查成员。
此外,Python 已经内置确定序列的长度以及确定最大和最小的元素的方法。
- 与字符串的索引一样,列表索引从 0 开始,第二个索引是 1,依此类推。
通过索引列表可以进行截取、组合等操作。- 索引也可以从尾部开始,最后一个元素的索引为 -1,往前一位为 -2,以此类推。
- 使用下标索引来访问列表中的值,同样你也可以使用方括号 [] 的形式截取字符
- 使用for循环
for a in list:
print(a)
# 向列表(尾部)添加元素
list.append(obj)
# 通过extend可以将另一个集合中的元素逐一添加到列表中
list.extend(list)
# 在指定位置index前插入元素object
insert(index, object)
#append和extend区别:
#append() 方法向列表的尾部添加一个新的元素。
#extend()方法只接受一个列表作为参数,并将该参数的每个元素都添加到原有的列表中
# del:根据下标进行删除
del list[2]
# pop:删除最后一个元素
list.pop()
# remove:根据元素的值进行删除
list.remove(值)
# 修改元素的时候,要通过下标来确定要修改的是哪个元素,然后才能进行修改
list[2] = "值"
# in(存在),如果存在那么结果为true,否则为false if a in list: print("找到了") else: print("没找到") # not in(不存在),如果不存在那么结果为true,否则false if a not in list: print("找到了") else: print("没找到") # 统计某个元素在列表中出现的次数 list.count(obj) # 从列表中找出某个值第一个匹配项的索引位置 list.index(obj)
其他常见方法:菜鸟驿站Python列表
Python 的元组与列表类似,不同之处在于元组的元素不能修改。
元组与字符串类似,下标索引从 0 开始,可以进行截取,组合等。
元组使用小括号 ( ),列表使用方括号 [ ]。
元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。
tuple= (1,"a","啊")
元组中只包含一个元素时,需要在元素后面添加逗号,否则括号会被当作运算符使用:
tup1 = (50)
type(tup1) # 不加逗号,类型为整型
<class 'int'>
tup1 = (50,)
type(tup1) # 加上逗号,类型为元组
<class 'tuple'>
tuple = (1,"a","啊")
print(tuple[0])
啊 #他没有引号
所谓元组的不可变指的是元组所指向的内存中的内容不可变。
# 元组中的元素值是不允许删除的,但我们可以使用del语句来删除整个元组
tuple = (1,"a","啊")
del tuple
print(tuple)
tuple = (1,"a","啊")
# for循环取值
for i in tuple:
print(i)
# 打印结果
<class 'tuple'>
<class 'type'>
# 计算元组元素个数。
len(tuple)
# 返回元组中元素最大值。
max(tuple)
# 返回元组中元素最小值。
min(tuple)
# 将可迭代系列转换为元组。
tuple(iterable)
字典是另一种可变容器模型,且可存储任意类型对象。
创建 :
字典的每个键值 key=>value 对用冒号 : 分割,每个对之间用逗号(,)分割,整个字典包括在花括号 {} 中 ,格式如下所示:
d = {key1 : value1, key2 : value2, key3 : value3 }
键必须是唯一的,但值则不必。
值可以取任何数据类型,但键必须是不可变的,如字符串,数字。
两个重要的点需要记住:
1)不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住2)键必须不可变,所以可以用数字,字符串或元组充当,而用列表就不行,
字典值可以是任何的 python 对象,既可以是标准的对象,也可以是用户定义的,但键不行。
能删单一的元素也能清空字典,清空只需一项操作。
显示删除一个字典用del命令
del dict['0'] # 删除键
dict.clear() # 清空字典
del dict # 删除字典
向字典添加新内容的方法是增加新的键/值对,修改或删除已有键/值对
dict = {0 : "a", 1 : "b", 2 : "c" } print(dict) # 有key 修改value dict[0] = "有key" print(dict) # 无key增加新的键值对 dict[10086] = "无key" print(dict) # 打印结果 {0: 'a', 1: 'b', 2: 'c'} {0: '有key', 1: 'b', 2: 'c'} {0: '有key', 1: 'b', 2: 'c', 10086: '无key'}
# 会打印键值对 print(dict) # for循环只会打印值 for i in dict: print(i) # 打印keys for key in dict.keys(): print(key,dict[key]) # 打印values for value in dict.values(): print(value) # 打印键值对 for item in dict.items(): print(item)
# 计算字典元素个数,即键的总数。
len(dict)
# 输出字典,以可打印的字符串表示。
str(dict)
# 返回输入的变量类型,如果变量是字典就返回字典类型。
type(variable)
集合(set)是一个无序的不重复元素序列。
可以使用大括号 { } 或者 set() 函数创建集合
注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。
创建格式:
parame = {value01,value02,...}
或者
set(value)
# 将元素 x 添加到集合 s 中,如果元素已存在,则不进行任何操作。
set.add( x )
# 还有一个方法,也可以添加元素,且参数可以是列表,元组,字典等
# x 可以有多个,用逗号分开。
set.update( x )
# 将元素 x 从集合 s 中移除,如果元素不存在,则会发生错误。
set.remove( x )
# 此外还有一个方法也是移除集合中的元素,且如果元素不存在,不会发生错误。
set.discard( x )
# 设置随机删除集合中的一个元素
# set 集合的 pop 方法会对集合进行无序的排列,然后将这个无序排列集合的左面第一个元素进行删除。
s.pop()
# 清空集合
s.clear()
# 交集和并集( & 和 | )
# 交集 # 集合a和b中都包含了的元素
set1 = {1, 2, 3, 4}
set2 = {3, 4, 5, 6}
new_set = set1 & set2
print(new_set)
# {3, 4}
# 并集 # 集合a或b中包含的所有元素
set1 = {1, 2, 3, 4}
set2 = {3, 4, 5, 6}
new_set = set1 | set2
print(new_set)
# {1, 2, 3, 4, 5, 6}
>>> # 下面展示两个集合间的运算.
...
>>> a = set('abracadabra')
>>> b = set('alacazam')
>>> a
{'a', 'r', 'b', 'c', 'd'}
>>> a - b # 集合a中包含而集合b中不包含的元素
{'r', 'd', 'b'}
>>> a | b # 集合a或b中包含的所有元素
{'a', 'c', 'r', 'd', 'b', 'm', 'z', 'l'}
>>> a & b # 集合a和b中都包含了的元素
{'a', 'c'}
>>> a ^ b # 不同时包含于a和b的元素
{'r', 'd', 'b', 'm', 'z', 'l'}
x in set
>>> thisset = set(("Google", "Runoob", "Taobao"))
>>> "Runoob" in thisset
True
>>> "Facebook" in thisset
False
>>>
方法 | 描述 |
---|---|
add() | 为集合添加元素 |
clear() | 移除集合中的所有元素 |
copy() | 拷贝一个集合 |
difference() | 返回多个集合的差集 |
difference_update() | 移除集合中的元素,该元素在指定的集合也存在。 |
discard() | 删除集合中指定的元素 |
intersection() | 返回集合的交集 |
intersection_update() | 返回集合的交集 |
isdisjoint() | 判断两个集合是否包含相同的元素,如果没有返回 True,否则返回 False |
issubset() | 判断指定集合是否为该方法参数集合的子集 |
issuperset() | 判断该方法的参数集合是否为指定集合的子集 |
pop() | 随机移除元素 |
remove() | 移除指定元素 |
symmetric_difference() | 返回两个集合中不重复的元素集合 |
symmetric_difference_update() | 移除当前集合中在另外一个指定集合相同的元素,并将另外一个指定集合中不同的元素插入到当前集合中 |
union() | 返回两个集合的并集 |
update() | 给集合添加元素 |
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。