前言
人生苦短,我用python。最近为了丰富自己的技术栈,开始学习这门神奇的语言。我的是在linux环境下进行学习,参考了廖雪峰先生的教程进行学习,不多说,下面将介绍python中几种不熟悉的数据元素:列表、元组、字典、set
列表
列表list是一种有序的集合,可以随时添加和删除其中的元素
1.1初始化列表
list=[‘java’,’php’,’c’,’python’]
1.2访问列表中的值
列表引用[索引号],如list[0],下标从0开始,-1表示最后一个,依次类推
1.3更新列表
直接将列表中值重新赋值,如list[0]=‘c++’
1.4删除列表元素
del list[0]
1.5列表操作符
[1,2]+[4,5] #[1,2,4,5]
[‘h’]*4 #[‘h’,’h’,’h’,’h’]
1 in [1,2] #true
for yy in [‘x’,’y’] # ‘x’,’y’
1.6列表截取
list=[‘java’,’php’,’c’,’python’]
list[0] #java
list[-1] #python
list[1:3] # c python 其中list[:-1]默认第一个是从0开始,list[0:]最后一个不写默认是最后一个
1.7列表函数与方法
list.append(obj) #末尾添加新对象
list.count(obj) #统计某个元素在列表中出现的次数
list.extend(seq) #在列表末尾一次性追加里一个序列
list.index(obj) #找出第一个匹配值的序列
list.insert(index,obj) #指定索引位置插入
list.pop(index) #按索引溢出列表中元素,默认最后一个
list.remove(obj) #按值移除
list.reverse() #倒转
list.sort() #排序
元组
元组tuple和list非常类似,但是tuple一旦初始化就不能修改,而且元组使用()定义,列表使用[]
初始化
tuple=(‘java’,’python’,’c’,’php’)
只有一个元素需要添加逗号
tuple=(‘java’,)
空元组
tuple=()
元组内置函数
cmp(t1,t2) #比较两个元组元素
len(t) #计算元组元素的个数
max(t) #返回元组中元素最大值
min(t) #。。最小值
tuple(seq) #列表转化为元组
其余操作和列表基本一致
字典
Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度
1.1初始化字典
如dict={‘java’:’hello’,’c’:’world’,’python’:’hi’}
1.2 访问字典的值
dict[‘java’] #hello
1.3修改字典
dict[‘java’]=’we’ #修改
dict[‘c++’]=’lol’ #增加
del dict[‘java’] #删除键
dict.clear() #清空字典
del dict #删除词典
1.4字典内置函数
1.cmp(dict1, dict2)
比较两个字典元素
2 len(dict)
计算字典元素个数,即键的总数。
3 str(dict)
输出字典可打印的字符串表示。
4 type(variable)
返回输入的变量类型,如果变量是字典就返回字典类型。
Python字典包含了以下内置方法:
1 dict.clear()
删除字典内所有元素
2 dict.copy()
返回一个字典的浅复制
3 dict.fromkeys(seq[, val])
创建一个新字典,以序列 seq 中元素做字典的键,val 为字典所有键对应的初始值
4 dict.get(key, default=None)
返回指定键的值,如果值不在字典中返回default值
5 dict.has_key(key)
如果键在字典dict里返回true,否则返回false
6 dict.items()
以列表返回可遍历的(键, 值) 元组数组
7 dict.keys()
以列表返回一个字典所有的键
8 dict.setdefault(key, default=None)
和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default
9 dict.update(dict2)
把字典dict2的键/值对更新到dict里
10 dict.values()
以列表返回字典中的所有值
11 pop(key[,default])
删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值。
12 popitem()
随机返回并删除字典中的一对键和值。
set
set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key。
要创建一个set,需要提供一个list作为输入集合:
s = set([1, 2, 3])
其余和字典差不多