一、列表方法
(1)、append
append方法用于列表末尾追加新的对象
(2)extend方法
extend方法可以在列表的末尾一次性追加另一个序列中的多个值,换言之,可以用新列表扩展原有的列表
a = [1,2,3]
b = [4,5,6]
a.extend(b)
print(a)
结果:[1, 2, 3, 4, 5, 6]
(3)index
index方法用于从列表中找出某个值第一个匹配项的索引位置
list = ['a','b','c','d']
print(list.index('c'))
结果:2
(4)insert方法用于将对象插入到对象中
numbers = [1,2,3,4]
numbers.insert(3,'four')
print(numbers)
结果:[1, 2, 3, 'four', 4]
(5)pop移除
pop方法会移除列表中的一个元素(默认是最后一个),并且返回该元素的值
numbers = [1,2,3,4]
numbers.pop(1)
print(numbers)
结果:[1, 3, 4]
pop方法是唯一一个既能修改列表又返回元素值(除了None的列表方法)
(6)remove
remove方法用于移除列表中某个值的第一个匹配项
list = ['a','b','c','d']
list.remove('a')
print(list)
结果:['b', 'c', 'd']
(7)reverse
reverse方法将列表中的元素反向存放
list = ['a','b','c','d']
list.reverse()
print(list)
结果:['d', 'c', 'b', 'a']
(8)sort
sort方法用于在原位置对列表进行排序,在“原位置排序”意味着原来的列表,从而让其中的元素能按一定的顺序排列,而不是简单地返回一个已排序的列表副本
x = ['b','c','e','a']
x.sort()
print(x)
结果:['a', 'b', 'c', 'e']
(9) 高级排序
compare(x,y)的形式自定义比较函数
compare(x,y)函数会在x
二、元组:不可变序列
元组与列表一样,也是一种序列,唯一的不同是元组不能修改
tuple函数
tuple函数的功能与list函数基本上是一样的,以一个序列作为参数并把它转换成元组,如果参数是元组,那么该参数就会被原样返回。
涉及的新函数
cmp(x,y) 比较两个值
len(seq) 返回序列的长度
list(seq) 把序列转换成列表
max(args) 返回序列或者参数集合中的最大值
min(args) 返回序列或者参数集合中的最大值
reversed(seq) 对序列进行反向迭代
sorted(seq) 返回已排序的包含seq所有元素的列表
tuple(seq) 把序列转换成元组
三、字符串
字符串是不可变的,字符串格式话使用字符串格式化操作符,即百分号%来实现
模版字符串
String模块提供另外一种格式化值的方法:模版字符串
(1)find
find方法可以再一个较长的字符串中查找子字符串,它返回字串所在位置的最左端索引,如果没有找到则返回-1
a ='with a moo-moo here ,and a moo-moo there '.find('moo')
print(a)
b ="monty python's Flying circus"
print(b.find('monty'))
print(b.find('python'))
结果为:7 0 6
(2)join
join方法是一种字符串方法,它是split方法的逆方法,用来在队列中添加元素
seq = ['1','2','3','4']
sep ='+'
print(sep.join(seq))
结果:1+2+3+4
(3)lower
lower方法返回字符串的小写字母版
如果想要编写“不区分大小写”的代码,那么这个方法就派上用场,代码会忽略大小写状态
(4)replace
replace方法返回某字符串中所有匹配项均被替换之后得到字符串
a ='this id a test '.replace('is','ezz')
print(a)
结果:thezz id a test
(5)split
也是一种字符串方法,也是join的逆方法,用来将字符串分割成序列。
注意:如果不提供任何分隔符,程序会将所有空格作为分隔符(空格、制表、换行等)
b ='/usr/bin/env'.split('/')
print(b)
结果:['', 'usr', 'bin', 'env']
(6)strip
strip方法返回去除两侧(不包括内部)空格的字符串
(7)translate
translate方法和replace方法一样,可以替换字符串中的某些部分,translate方法只处理单个字符
字符串格式化“求模操作符%可以用来将其他值转换为包含转换标志的字符串,例如%s
它还能用来对值进行不同方式的格式化,包括左对齐,设定字段宽度以及精度值,增加符号(正负号),或者填充数字0
字典
创建和使用字典
字典是由key和valus(健值对组成),字典中的键是唯一的,而值不唯一
dict函数,通过其他映射(比如其他字典)或者(键,值)这样的序列对建立字典
items = [('names','gumby'),('age',42)]
dict函数根本不是个真正的函数,它是个类型,就像list、tuple和str一样
基本字典操作
字典的基本行为:
len(d)返回d中项(键-值对)的数量;
d[k]返回关联到键k上的值;
d[k] = v将值v关联到键k上;
del d[k]删除键为k的项;
k in d检查d中是否含有键为k的项;
键类型:字典的键不一定为整型数据,也可能是其他不可变类型,比如浮点类型(实型)、字符串或者元组。
自动添加:即使那个键起初在字典中并不存在,也可以为它分配一个值,这样字典就会建立新的项。而不能将值关联到列表范围之外的索引上。
它和lower方法一起使用的话就可以很方便的对比输入的和存储的值。