Python教程(二)
Python基础教程(二)
- 
    
Python包含6中内建序列:列表,元组,字符串,Unicode字符串,buffer对象和xrange对象。
列表和元组的主要区别:列表可以修改,如果根据要求添加元素,列表更合适;元组不能修改,在序列不能修改时,使用元组则更为合适
ed= ['Edward', 4] jo=['John', 5] database=[ed, jo] # 输出为 [ ['Edward', 4], ['John', 5]] 
通用操作
- 
    
索引:
greeting='Hello'; greeting[0]; greeting[-1] - 
    
分片:第1个索引是要提取的第一个元素编号,最后的索引分片后第1个元素的编号
number[3:6] #结果为3,4,5 number[7,10] #结果为7,8,9,其中索引号10不存在,但用表示结尾 number[-1,-3] #从结尾反向输出 number[ -1:] #从结尾反向输出到起始点 number[1:10:2] #步长为2 - 
    
序列相加:只有相同类型的序列才能进行连接操作
[1, 2, 3] + "World!" #非法 - 
    
乘法:序列重复N次
空列表初始化:用None表示什么都没有
sequence=[None]*10 - 
    
成员资格:检查一个值是否这序列中,使用in运算符,返回True或False
users=['mlh', 'foo', 'bar'] 'bar' in users - 
    
长度,最小值和最大值:len(),min()和max()
 
列表
- 
    
list函数:根据不同类型表达创建列表,适用于所有类型的序列
list('Hello') #结果为['H', 'e', 'l', 'l', 'o'] - 
    
改变列表:元素赋值
x[1]=2 - 
    
删除元素
del x[2] - 
    
分片赋值:
`name[2:]=list('ar')` #替换 `numbers[1:1]=[2, 3, 4]` #插入 `numbers[1:4]=[ ]` #删除 
列表方法
- 
    
方法:是一个与某些对象有紧密联系的函数,对象可能是列表,数字或字符串。调用形式:对象.方法(参数)
 - 
    
append: 用于在列表末尾追加新对象,其是直接修改原来的列表,而不是返回一个修改过的新列表
object.append(4) - 
    
count:统计某个元素在列表中出现的次数
 - 
    
extend:在列表的末尾一次性追加另一个序列的多个值,用新列表拓展原有列表
a=[1,2,3] b=[4,5,6] a.extend(b) - 
    
index:用于从列表中找出某个值第一个匹配项的索引位置
nights=['we', 'are', 'man'] nights.index('we') #返回0 - 
    
insert:将对象插入到列表中
numbers.insert(3, 'four')或numbers[3:3]=['four'] - 
    
pop:移除列表中的一个元素(默认最后一个)
x.pop() #移除列表中的一个元素 x.pop(0) #移除第一个 - 
    
remove:移除列表中某个值的第一个匹配项
x.remove['be'] - 
    
reverse:将列表中的元素反向存放
x.reverse()或list(reversed(x)) - 
    
sort:在原位置对列表进行排序,缺省默认升序排列
y=x #无用,只是将x和y都指向同一个列表,x和y同时改变 y=x[:] #将x所有元素都赋给y - 
    
高级排序:将参数cmp,key与reverse输入到sort()
numbers.sort(cmp); x.sort(key=len); x.sort(reverse=True); 
元组
元组与列表奕扬,也是一种序列。唯一不同的是元组不能修改,字符串也不能修改。用逗号分割一些值,则自动创建了元组。 1, 2, 3返回(1, 2, 3)。一个值的元组 42,返回(42, )
- 
    
tuple函数:与list函数基本一致,以一个序列作为参数,并把它作为转换为元组
tuple([1, 2, 3]) #返回(1, 2, 3) - 
    
元组的基本操作,除了创建元组和访问元组元素之外,操作基本与序列相同
 - 
    
元组可以在映射中当做键使用,而列表则不行;元组作为很多内建函数和方法的返回值存在
 
本章新函数
- 
    
cmp(x, y) 比较两个值
 - 
    
len(seq) 返回序列的长度
 - 
    
list(seq) 把序列转换成列表
 - 
    
max(args) 返回序列或者参数集合中的最大值
 - 
    
min(args) 返回序列或者参数集合中的最小值
 - 
    
reversed(seq) 对序列进行反向迭代
 - 
    
sorted(seq) 返回已排序的包含seq所有元素的列表
 - 
    
tuple(seq) 把元素转换成元组