列表和元组-通用序列基本操作

Pytho的六种内建序列列表,元组,字符串,Unicode字符串,buffer对象,xrange对象。

列表和元组区别列表可以修改,元组不能。

通用序列操作索引indexing,分片slicing,加adding,乘multiplying以及检查某个元素是否属于序列的成员(成员资格)。

除此之外,Python还有计算序列长度,找出最大元素和最小元素的内建函数。

索引

序列中元素都是有编号的—从0开始递增

>>>greeting='hello'

>>>greeting[0]

'h'

负数索引时,从最后一个元素开始计数,最后一个元素的位置编号是-1.

>>greeting[-1]

'o'

也可以直接用字符串面值索引

>>'hello'[1]

'e'

索引示例:

months=['January',
        'February',
        'March',
        'April',
        'May',
        'June',
        'July',
        'August',
        'September',
        'October',
        'November',
        'December',
        ]
#以1~13的数字作为结尾的列表
endings=['st','nd','rd']+17*['th']\
         +['st','nd','rd']+7*['th']\
         +['st']
year   =input('Year: ')
month  =input('Month(1-12): ')
day    =input('Day(1-31): ')
month_number=int(month)
day_number=int(day)
#记得要将月份和天数减1,以获得正确的索引
month_name=months[month_number-1]
ordinal=day+endings[day_number-1]

print (month_name+' '+ ordinal + '.' +year)

程序执行结果:

Year: 1974
Month(1-12): 8
Day(1-31): 16
August 16th.1974

2.分片

使用分片来访问一定范围内的元素。分片通过冒号隔开的两个索引来实现。

Type "copyright", "credits" or "license()" for more information.
>>> tag='<a href="http://www.python.org">Python web site</a>'
>>> tag[9:30]
'http://www.python.org'
>>> tag[32:-4]
'Python web site'
>>> 

如果分片所得部分包括序列结尾的元素,只需质控最后一个索引即可

>>>numbers[-3:]

[8,9,10]

该方法同样适用于序列开始的元素

>>>numbers[:3]

[1,2,3]

如果需要复制整个序列,可以将两个索引都置空

>>>numbers[ : ]

步长:

如果步长被设置为比1更大的数,那么就会跳过某些元素。例如,步长为2的分片包括的是从开始到结束每隔1个的元素

>>>numbers[0:10:2]

[1,3,5,7,9]

注:步长可以为负数,此时分片从右到做提取元素。

序列相加

通过使用加运算符可以进行序列的连接操作:

>>>[1,2,3]+[4,5,6]

[1,2,3,4,5,6]

两种类型相同的序列才能进行连接操作。

乘法

用数字x乘以一个序列会生成新的序列,而在新的序列中,原来的序列将会被重复x此。

None,空列表,初始化

初始化长度为10的空列表:

>>>sequence=[None]*10

成员资格

in运算符:检查一个值是否在序列中(布尔运算符)

>>> p='rw'
>>> 'w' in p
True

长度,最小值,最大值

内建函数:

len:返回序列中包含的元素数量。

min:返回序列中最大元素。

max:返回序列中最小元素。


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值