2018-11-03
阅读量:
801
Python的序列操作-索引
序列中的所有元素都有编号——从0开始递增。你可像下面这样使用编号来访问各个元素:
>>> greeting = 'Hello'
>>> greeting[0]
'H
字符串就是由字符组成的序列。索引0指向第一个元素,这里为字母H。不同于其他一
些语言, Python没有专门用于表示字符的类型,因此一个字符就是只包含一个元素的字
符串。
Python将从右(即从最后一个元素)开始往左数,因此1是最后一个元素的位置。
>>> greeting[-1]
'o'
对于字符串字面量(以及其他的序列字面量),可直接对其执行索引操作,无需先将其赋给
变量。这与先赋给变量再对变量执行索引操作的效果是一样的。
>>> 'Hello'[1]
'e'
如果函数调用返回一个序列,可直接对其执行索引操作。例如,如果你只想获取用户输入的
年份的第4位,可像下面这样做:
>>> fourth = 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 = 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






评论(0)


暂无数据
推荐帖子
0条评论
0条评论
1条评论