我正在尝试让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)
答案 0 :(得分:0)
整数和字符串在Python中不是一回事。如果您有一个但又想要另一个,则需要使用int
或str
在它们之间进行显式转换。数字的最后一位(作为字符串)是str(n)[-1]
。如果您想将数字作为数字,请将整个内容包装在int()
。
由于您的函数使用字符串'firstn'
和'lastn'
而不是存储在这些名称的变量中的值,您似乎也会将变量与其名称混淆。如果你想要变量,请删除引号!