私は現在、Pythonを学んでいるので、何が起こっているのか分かりません。
num1 = int(input("What is your first number? "))
num2 = int(input("What is your second number? "))
num3 = int(input("What is your third number? "))
numlist = [num1, num2, num3]
print(numlist)
print("Now I will remove the 3rd number")
print(numlist.pop(2) + " has been removed")
print("The list now looks like " + str(numlist))
Num1、num2、num3の数字を入力してプログラムを実行すると、次の結果が返されます。トレースバック(最後の最後の呼び出し):
TypeError: unsupported operand type(s) for +: 'int' and 'str'
文字列と整数を連結しようとしていますが、これは正しくありません。
print(numlist.pop(2)+" has been removed")
を次のいずれかに変更します。
int
からstr
への明示的な変換:
print(str(numlist.pop(2)) + " has been removed")
つかいます ,
の代わりに +
:
print(numlist.pop(2), "has been removed")
文字列のフォーマット:
print("{} has been removed".format(numlist.pop(2)))
試して、
str_list = " ".join([str(ele) for ele in numlist])
このステートメントは、リストの各要素をstring
形式で提供します
print("The list now looks like [{0}]".format(str_list))
そして、
print(numlist.pop(2)+" has been removed")
を変更
print("{0} has been removed".format(numlist.pop(2)))
同じように。