0

Python を学ぼうとしている pyschools のコースを受講しています。この質問では、数字のリストを入力し、入力した数字の最後の桁を追加するように求められます。これが私が思いついたコードです。笑いません(私は新しいです)。コードは私のバージョンの Python 2.7.5 で動作します。ただし、サイトでエラーが発生します。リストの最後の番号を追加するより良い方法はありますか? リストを整数としてキャストしていると思いますが、彼らのサイトはそれを好まないのですが、よくわかりません。私はあなたの助けに感謝します、ありがとう。

def getSumOfLastDigits(numList):
    total = 0
    for num in numList:
        total += int(num[-1])
    return total

input_Nums = raw_input('Enter the list of numbers: ').split(',')

print getSumOfLastDigits(input_Nums)

エラー:

Traceback (most recent call last):
File "Code", line 4, in getSumOfLastDigits
TypeError: 'int' object has no attribute '__getitem__'
4

2 に答える 2

0

numList が文字列のリストである場合、提供したコードに基づいてそのエラーが発生することはありません。それ以外の場合、それが数値のリストである場合、 で整数の最後の桁にアクセスすることはできませんnum[-1]。代わりにできることは、モジュロ 10 を取ることです。

def getSumOfLastDigits(numList): 
    total = 0 
    for num in numList: 
        total += num % 10
    return total
于 2013-07-13T03:08:20.397 に答える