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

本篇主要讨论最常用的两种类型:列表、元组

本文地址:http://www.cnblogs.com/archimedes/p/python-list-tuple.html,转载请注明源地址。

列表和元组的主要区别在于,列表可以修改,元组则不能。一般情况下,在几乎所有的情况下列表都可以代替元组

例如:使用序列可以表示数据库中一个人的信息(姓名,年龄)

>>> edward=['Edward Gumby',42]

序列还可以包含其他序列

>>> edward=['Edward Gumby',42]
>>> john=['John Smith',50]
>>> database=[edward,john]
>>> database
[['Edward Gumby', 42], ['John Smith', 50]]

通用序列操作

所有的序列操作都可以进行某些特定的操作。这些操作包括:索引、分片、加、乘以及检查某个元素是否属于序列的成员

索引

序列中的所有元素都是有编号的--从0开始递增。这些元素可以通过编号分别访问,如下:

>>> greeting='hello'
>>> greeting[0]
'h'
>>> greeting[-1]
'o'
>>> 'hello'[1]
'e'

如果一个函数调用返回一个序列,那么可以直接对返回结果进行索引操作,例如:

>>> fourth=raw_input('Year:')[3]
Year:2005
>>> fourth
'5'
#根据给定的年月日以数字形式打印出日期
months=[
    'January',
    'February',
    'March',
    'April',
    'May',
    'June',
    'July',
    'August',
    'September',
    'October',
    'November',
    'December'
    ]

#以1~31的数字作为结尾的列表
endings=['st','nd','rd']+17*['th']\
    +['st','nd','rd']+7*['th']\
    +['st']
year=raw_input('Year: ')
month=raw_input('Month(1-12): ')
day=raw_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
View Code

相关文章: