Python編集中のエラーTypeError:unsupported operand type(s)for+:'int'and'str'

6611 ワード

TypeError: unsupported operand type(s) for +: ‘int’ and ‘str’
数列の中の1~9のシーケンスを印刷しようと思ったが、1、2、3の3つの数が特殊なので1 st、2 nd、3 rdを打つ必要があり、すべて「+」で記号を接続したいと思っていた.コード:
 #   
countst = [1,2,3,4,5,6,7,8,9]
for nums in countst :
    if nums == 1:
        print(nums + 'st')
    elif nums == 2:
        print(nums + 'nd' )
    elif nums == 3:
        print(nums + 'rd' )
    else:
        print(nums + 'th' )

印刷結果:
Traceback (most recent call last):
File "E:/PyCharm/HomeStudy/venv/Include/study511.py", line 5, in <module>
 print(nums + 'st')
TypeError: unsupported operand type(s) for +: 'int' and 'str'

これはタイプエラーです.Pythonはあなたが使っている情報を認識できないという意味です.Pythonはintタイプの変数をstrタイプに関連付けることを発見しました.「+」という記号は加算の役割も接続の役割もあり、Pythonはどのように処理するか分かりません.したがって、Pythonが文字列以外の値を文字列として表すように***str()関数***を呼び出すことができます.変更後:
#   
countst = [1,2,3,4,5,6,7,8,9]
for nums in countst :
    if nums == 1:
     print(str(nums) + 'st')
 elif nums == 2:
     print(str(nums) + 'nd' )
 elif nums == 3:
     print(str(nums) + 'rd' )
 else:
     print(str(nums) + 'th' )