Python基础学习(序列)

序列的基本操做

拼接序列
python

使用‘+’号拼接相同类型的序列,新序列可能有重复元素app

print [1,2,3]+[2,3,4]+[4,5]
print 'hello '+ 'world!'

序列*数字
函数

用数字x乘以一个序列会生成新序列,原序列会被重复x次学习

print [1,2,2]*2
#能够用None关键字建立指定长度的空列表
print [None]*4

将控制台输入的英文用‘盒子’包含住打印输出
spa

#raw_input函数会将控制台输入转为字符串
words=raw_input("input:")
#len()函数能够获取序列长度
width=len(words)
print '+'+'-'*width+'+'
print '|'+words+'|'
print '+'+'-'*width+'+'

判断一个序列是否包某一个元素——incode

控制台的输入在指定序列中,则输出访问成功排序

dataList=[
          ['lisi','123'],
          ['zhangsan','234'],
          ['wangwu','325']
          ]
userName=raw_input('input name:')
userPwd=raw_input('input password:')
userInput=[userName,userPwd]
if userInput in dataList:
    print 'access granted!'

内建函数len、min、max索引

numbers=[4,2,44,56,3,22]
print len(numbers)
#这里使用了占位符‘%’,将%d替换为%后表示的数字
print "min number:%d" %min(numbers)
print "the min is:%d" %(min(2,4,3))
print "max number:%d" %(max(numbers))
print "the max is:%d" %(max(2,4,3))

列表

前面的例子中已经用到了不少次列表,这里学习列表与元组、字符串的不一样之处——列表是可变的,即改变列表内容。
rem

list函数主要用来将指定序列转为列表,例如将字符串转为列表字符串

print list('hello')
print list()

删除列表中的元素--del关键字

names=['lisi','wangw','zhaoliu','lucy','lily']
del names[1]
print names

分片赋值

注意,不能给一个索引位置不存在的位置赋值(单索引赋值)

改变原列表长度的赋值,这保留了原列表中的部分元素

names=['lisi','wangw','zhaoliu','lucy','lily']
names[2:]=list('hello')
names[2:]=[1,2,3,5,8]

append(param):在列表末尾添加一个元素

names=['lisi','wangw','test','lucy','lily']
#在列表末尾添加一个元素
names.append("test")

count(obj):统计列表中元素obj出现的次数

print names.count('test')

extend(list):将指定序列添加到原序列,与链接符‘+’相比,该方法改变了原序列,更高效

names.extend([1,2,4])

index(param):获取列表中指定元素的索引,该元素必须在列表中

print names.index("test")

insert(index,obj):在列表的指定索引处插入一个元素

names.insert(2, 3)

pop([index]):移除列表中的指定索引元素(默认最后一个)并返回

print names.pop()
print names.pop(0)

remove(obj):移除列表中的第一个obj元素

#remove方法用于移除列表中首个指定元素,
#remove是针对元素,del是针对索引 del names[1]
names.remove('test')

reverse():将列表倒序

names.reverse()

复制一个列表

myList=[11,8,12,4,1,1,3]
#这里有效的复制了一个列表,若是使用赋值,表明两个变量指向同一个列表
list1=myList[:]

内建函数sorted(obj)能够不改变原有列表,返回一个排序的新列表,适用于任何元素

list2=sorted(myList)

内建函数cmp(x, y):比较元素x、y,x<y则返回负数,x>y返回正数,x==y返回0

print cmp(12, 14)

sort(cmp=None, key=None, reverse=True):对列表进行排序,sort方法并不会返回新列表,它会改变原有列表

cmp:是比较函数,能够自定义

key:对列表中元素建立一个key,而后按照各个元素的key对列表排序

reverse参数为True表示降序,False表示升序;

list1.sort(cmp=None, key=None, reverse=True)
#按照列表names中元素的长度排序
names = ['lis','test','aa','aaaaaaa','bbbbb']
names.sort(cmp=None, key=len, reverse=False)

序列之元组——不可变序列

元组与列表同样,都是序列,惟一不一样的就是元组不可修改(字符串也不可修改)

定义一个元组

temp=(1,2,5)

定义一个元组,且该元组只有一个元素,元素后必须加‘,’号,不然会变为数值

temp=(1,)

元组的拼接,数乘,分片(‘:’切割),包含判断等都可参考序列的方法

tuple:将指定序列转为元组

tuple('123')
相关文章
相关标签/搜索