美文网首页
数据结构/集合/元组

数据结构/集合/元组

作者: Gorden_x | 来源:发表于2017-10-20 22:19 被阅读0次

1.集合Set
strs=set(['jetf','wong','cnblogs'])
nums=set(rang(10)),集合就是由序列构建的。
特点:
(1)副本是被忽略的,(重复的的数据被忽略)
set1=set([0,1,2,3,1,0,2,5])
print set1
set2=set([0,1,2,3,4,5])
print set2
运行输出:
set([0, 1, 2, 3, 5])
set([0, 1, 2, 3, 4, 5])

(2)集合元素的顺序是随意的
strs=set(['jetf','wong','cnblogs'])
print strs
运行输出:
set(['wong', 'jetf', 'cnblogs'])

2.集合常用方法
(1)并集union 或者 |
set1=set([1,2,3])
set2=set([2,3,4])
set3=set1.union(set2)
print set3
运行输出:
set([1, 2, 3,4])

set1=set([1,2,3])
set2=set([2,3,4])
set3=set1|set2
print set3
运行输出:
set([1, 2, 3, 4])

(2)还包括&交集,<=,>=,-,copy()等
&交集:
set1 = set([1, 2, 3])
set2 = set([2, 3, 4])
set3 = set1&set2
print set3
运行输出:
set([2, 3])

issubset是否子集
set1 = set([1, 2, 3])
set2 = set([2, 3, 4])
set3 = set1&set2
print set3.issubset(set1)
运行输出:
True

copy() is 判断是否
set1 = set([1, 2, 3]) set1 = set([1, 2, 3])
set2 = set([2, 3, 4]) set2 = set([2, 3, 4])
set4 = set1.copy() set4 = set1.copy()
print set4 print set4 is set1
运行输出:
set([1, 2, 3]) False

add 添加 remove 移除 print 29 in set1 查找29是否在set1里
set1 = set([1]) set1 = set([1,2])
print set1 print set1
set1.add(2) set1.remove(2)
print set1 print set2
运行输出:
set([1]) set([1, 2])
set([1, 2]) set([1])

print 29 in set1 查找29是否在set1里
True/False

(3)frozenset
集合是可变的,所以不能用做字典的键。集合本身只能包含不可变量,所以也就不能包含其他集合
set1=set([1])
set2=set([2])
set1.add(set2)
运行会报错

可以使用frozenset类型用于代表不可变(可散列)的集合
set1=set([1])
set2=set([2])
set1.add(frozenset(set2))
print set1
运行输出:
set([1, frozenset([2])])

2.元组
Python的元组与列表类似,不同之处在于元组的元素不能修改。元组使用小括号,列表使用方括号。
(1)创建:在括号中添加元素,使用逗号隔开即可。
tup1 = ('pyghfsd'.'chemistry',1997,2000);
tup2 = (1,2,3,4)
tup3 = "s","d","g","c";

创建空元组 创建1个元素
tup1 = (); tup1 = (50,);

(2)访问
tup1 = ('pyghfsd','chemistry', 1997, 2000);
tup2 = (1, 2, 3, 4, 5, 6, 7);
print "tup1[0]:",tup1[0]
print "tup2[1:5]:",tup2[1:5]
运行输出:
tup1[0]: pyghfsd
tup2[1:5]: (2, 3, 4, 5)

(3)修改,直接修改元组元素值是不对的,但我们可以对元组进行连接组合:
tup1=(12,345)
tup2=('adc','sds')
tup3=tup1+tup2
print tup3
运行输出:
(12, 345, 'adc', 'sds')

(4)删除,元组中的元素值是不允许删除的,但我们可以用del语句来删除整个元组。
tup=('sdfsdf','yuazu','hahah')
print tup
del tup
print "After deleting tup"
print tup
运行输出:
('sdfsdf', 'yuazu', 'hahah')
Traceback (most recent call last):
After deleting tup
后报错

(5)常用表达式 结果 描述
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 x in (1,2,3): print x, 1 2 3 迭代

(6)索引,截取
因为元组也是一个序列,所以我们可以访问元组中的指定元素,也可以截取一段元素
L = ('spam','Spam','SPAM')
python表达式 结果 描述
L[2] 'SPAM' 读取第三个元素
L[-2] 'Spam' 读取倒数第二个元素
L[1:] 'spam','Spam' 截取元素(从1到最后)

(7)无关闭分隔符
任意无符号的对象,以逗号隔开,默认为元组,如下:
print 'abc', -4.24e93, 18+6.6j, 'xyz'
x, y = 1, 3
print "Value of x,y : ", x, y
运行输出:
abc -4.24e+93 (18+6.6j) xyz
Value of x,y : 1 3

相关文章

  • 2021-12-1 Python-8

    内建数据结构 Python 常用的数据结构主要有元组、列表、字典和集合。 元组 元组长度固定,是不可变 Pytho...

  • 第3章:内建数据结构、函数及文件

    python的常用数据结构:元组、列表、字典和集合 元组(tuple):固定长度、不可变的python序列 列表:...

  • Python_by_4plus_Week0(3)

    五 Data Structure (数据结构) python的四种数据结构,分别是:列表、字典、元组、集合。 列表...

  • python 入门之数据类型

    常用数据结构 Number(数字) String(字符串) List(列表) Tuple(元组) Set(集合) ...

  • python的几种数据结构

    Python 中 几种数据结构的整理: 列表、字典、元组、集合 列表 : shoplist = ['apple',...

  • Python 数据结构

    Python 有四种内置的数据结构 - 列表(List),元组(Tuple),字典(Dictionary),集合(...

  • 数据结构/集合/元组

    1.集合Setstrs=set(['jetf','wong','cnblogs'])nums=set(rang(1...

  • python基础数据结构-列表

    python常用的几种数据结构:列表(list)、字典(dict)、元组(tuple)、集合(set)。 今天练习...

  • python基础数据结构-字典与集合

    python常用的几种数据结构:列表(list)、字典(dict)、元组(tuple)、集合(set)。 今天练习...

  • 数据结构

    序列(如列表和元组)、映射(如字典)以及集合(set)是三类主要的数据结构(也称为容器)。 序列(列表、元组和字符...

网友评论

      本文标题:数据结构/集合/元组

      本文链接:https://www.haomeiwen.com/subject/ngfbuxtx.html