- 论坛徽章:
- 0
|
本帖最后由 good_luck_68 于 2013-05-16 20:39 编辑
题目需求:输入一个数字,返回对应的英文。例如输入87,返回eight-seven
大牛看了肯定能想到更好的方法,但我发这帖子主要希望大家帮忙看下到底语法哪错了,暂时先不考虑更好的算法了,谢了
def test(num):
alist = ['zero', 'one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', 'nine']
num_int = int(num)
new = []
if num_int>100 or num_int<0:
print 'Out of range'
else:
for i in range(len(num)):
new.append(alist[num]) 这句总是错误,我的想法是先通过num获得某一位的值x,然后再通过alist[x]获取对应的英文,最后通过append加入到新列表中,但总是错误,求解答 print new
>>> test('87')
Traceback (most recent call last):
File "<pyshell#119>", line 1, in <module>
test('87')
File "C:/Python27/test/6-8.py", line 9, in test
new.append(alist[num])
TypeError: list indices must be integers, not str |
|