python序列学习

一、概述:

python包含6种内建序列:列表、元组、字符串、Unicode字符串、buffer对象、xrange对象

二、序列通用的操作:

索引:序列中每个元素都有一个序列号(称为索引),从0开始,这些序列中的元素都可通过索引来访问(如:XX[0]或XX[-1])

分片:可以使用分片操作获取一定范围内的元素,规则:取前不取后;格式:X[开始索引:结束索引:步长],步长不写时默认为1(如:x[3:6]取第3、4、5个元素;x[-3:]、x[:5]、x[:])

加(+):相同类型的系列可通过+进行连接,如[1,2,3]+[4,5,6] 结果:[1,2,3,4,5,6] 

乘(*):用数字x乘以序列会生成新序列,新序列是原来的序列被重复x次,如:[42,43,40]*2结果:[42, 43, 40, 42, 43, 40]

成员资格(in):使用 in检查一个值是否在序列中,条件为真返回True,条件为假返回False

计算序列长度(len):len函数返回序列中所包含元素的数量;len([42,43,40]) 结果3

最大元素(max):max函数返回序列中最小元素;max([42,43,40])结果 43

最小元素(min):min函数返回序列中最小元素 ; min([42,43,40]) 结果 40

三、列表

创建列表:只要把逗号分隔的不同的数据项使用方括号[ ]括起来即可

特性:列表内容是可改变的

list函数:将系列转换为列表;list('hello');输出结果:['h', 'e', 'l', 'l', 'o']

基本列表操作:

  1. 改变列表:元素赋值;x=[1,1],x[1]=2;print(x);结果:[1,2]
  2. 删除元素:del x[1];print(x);结果:[1]
  3. 分片赋值:x=[1,5]; x[1:]=[2,3,4,6,7,8];print(x);结果:[1,2,3,4,6.7,8]

列表方法:

  1. append方法:用于在列表末尾追加新的对象,会修改原有列表;x=[1,5] ;x.append(4) ; print(x);结果:[1,5,4]
  2. count:统计某个元素在列表中出现的次数;[1,5,1,1].count(1); 结果:3
  3. extend:在列表的末尾一次性追加另一个序列中的多个值,会修改原有列表;a=[1,2],b=[4,5,6];a.extend(b);print(a);     结果:[1,2,4,5,6]
  4. index:从列表中找出某个值,第一个匹配项的索引位置
  5. insert:用于将对象插入到列表中;a=[1,5,2,1];a.insert(2,'four') ;print(a);结果:[1,5,2,'four',1]
  6. pop:移除列表中的一个元素(默认最后一个),并返回该元素的值; a=[1,5,6];print(a.pop() ,a.pop(1));结果:6,5; print(a);结果:[1]
  7. remove:用于移除列表中某个值的第一个匹配项;  a=[1,5,1];a.remove(1) ,print(a);结果:[5,1]
  8. reverse:将列表中的元素反向存放;a=[1,5,2,5]; a.reverse();print(a)结果:[5, 2, 5, 1]
  9. sort:用于在原位置对列表进行排序;a=[1,5,2,4]; a.sort();print(a)结果:[1, 2, 4, 5]

四、元组

创建元组:只要把逗号分隔的不同的数据项使用括号( )括起来即可

特性:元组不能修改;如下修改元组是错误的

  • a=(1,2,3);
  • a[0]=3
  • Traceback (most recent call last):
  •   File "<pyshell#18>", line 1, in <module>
  •     a[0]=3
  • TypeError: 'tuple' object does not support item assignment

tuple函数:以一个序列做为参数,把它转换为元组;tuple([1,2,3]) 输出结果:(1, 2, 3)

元组基本操作:序列通用的操作

五、字符串

特性:字符串不能修改,如下修改字符串元素,是错误的

st='http://'
st[1:]='ttps'
Traceback (most recent call last):
  File "<pyshell#20>", line 1, in <module>
    st[1:]='ttps'
TypeError: 'str' object does not support item assignment

字符串基本操作:序列通用的操作

字符串常用方法:

  1. find:可以在一个较长的字符串中查找子串,返回子串所有位置的最左端索引,没找到返回-1;'Htoop,hoap'.find('o')
    2
  2. join:用来连接序列中的元素,被连接的序列元素都必须是字段串;('+').join(['1','2','3'])   '1+2+3'
  3. lower:返回字符串的小写字母;'HtooP'.lower()   'htoop'
  4. upper:返回字符串的大写字母; 'HtooP'.upper()    'HTOOP'
  5. replace:返回某个字符串的所有匹配项均被替换之后得到字符串
  6. split:是jion的逆方法,用传入的参数将字符串分割成序列;'1+2+3'.split('+')   ['1', '2', '3']
  7. strip:返回去除两侧空格的字符串(不包括内部)' xxx '.strip(),也可去除两侧指定字符'*xxx*'.strip('*')
  8. translate:替换字符串中的某些部分的单个字符,可同时进行多个替换

字符串格式化:

字符串格式化操作符%:%左侧旋转一个字符串,右侧则旋转希望被格式化的值,多个值需要用元组,即使用()括起来

转换说明符%s:标记需要插入置换值的位置

 f='hello,%s is %s enough'
val=('world','hot')
 print(f % val)
hello,world is hot enough

另一种格式化方式:

f'{变量名}我是占位'; print(f'{变量名}我是占位')

此方式优势:不用考滤打印的变量类型

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值