我想得到一个两位数的最后一个数字,但TypeError' int'对象没有属性' __ getitem __'发生

时间:2016-03-08 00:45:18

标签: python-2.7 if-statement

我正在尝试让Python打印出一个双位数字的最后一个数字,但它一直告诉我' TypeError' int'对象没有属性' getitem ''。我该怎么做才能解决这个问题?

def lucky(firstn,lastn,c):
    if len('firstn')>1:
        c = len('firstn')*len('lastn')*3
        return c[-1]

firstname = raw_input('Enter your first name: ')
lastname = raw_input('Enter your last name: ')
f = len(firstname)*len(lastname)*3
print lucky(firstname,lastname,f)

1 个答案:

答案 0 :(得分:0)

整数和字符串在Python中不是一回事。如果您有一个但又想要另一个,则需要使用intstr在它们之间进行显式转换。数字的最后一位(作为字符串)是str(n)[-1]。如果您想将数字作为数字,请将整个内容包装在int()

由于您的函数使用字符串'firstn''lastn'而不是存储在这些名称的变量中的值,您似乎也会将变量与其名称混淆。如果你想要变量,请删除引号!