注册 登录
编程论坛 Python论坛

求助 新学python 不知错那了?

wangyafeng 发布于 2012-09-22 10:26, 1625 次点击
#! /usr/bin/env python
# list.sort()
months=[
        'January=1'
        'February=2'
        'March=3'
        'April=4'
        'May=5'
        'June=6'
        'July=7'
        'August=8'
        'September=9'
        'October=10'
        'November=11'
        'December=12'
]
endings=['st','nd','rd'] + 17*['th'] +['st','nd','rd'] +7 *['th']+['st']
#取得输入值
year=raw_input('year:')
month=raw_input('month:')
day=raw_input('day:')
 
#取得的值
month_number= int(month)
day_number=int(day)
 
 
month_name =months[month_number-1]
ordinal=day+endings[day_number-1]
 
 
print month_name +' '+ordinal+','+year

运行 总是提示:File "./news", line 28, in ?
    month_name =months[month_number-1]
IndexError: list index out of range     请大侠给与指正 到底是哪错了?!
6 回复
#2
hrg6896892012-09-22 22:20
出现name 'raw_input' is not defined错误,原因是版本3.0 中去掉了raw_input 函数,改用input。
#3
wangyafeng2012-09-27 16:20
这个问题 仍没有解决  可以运行一下 我升级到了2.7.3版本  然后 使用input 仍报错   应该报的错指的是 list index out of range   越界  但是我不知道是哪个地方越界
#4
qq6094701562012-09-28 09:36
越界了  
#5
qq6094701562012-09-28 09:52
你输入的数字可以比11还多 你的索引最多才11 你约束在里面就不会报错了~~~
#6
shipeixuan2012-09-29 09:24
months=[
        'January=1','February=2','March=3',
        'April=4','May=5','June=6','July=7','August=8','September=9','October=10','November=11','December=12']
列表里面的元素之间要加逗号,不然就只有一个元素。
#7
快乐出发02202012-10-16 21:59
回复 6楼 shipeixuan
正解,不错。。
1