私は7桁のコードから奇数桁を受け取り、それを 'oddDigitList'というリストに追加する関数を作成しましたが、なぜ私はコードを実行すると、実行時エラーが発生します。'ValueError:基数10のint()のリテラルがPythonで' N ''
# A function used to add odd digits from a variable to the 'oddDigitList' list, which will be used to calculate the 8th digit of the GTIN-8 code
def formOddDigitList(variable):
# The 'for' loop gets values from digit #1 to digit #7 in twos
variable = str(variable)
for i in range(0,8,2):
variable[i]
# The digits in the 'variable' argument are added to the 'oddDigitList' list
# The digits are converted into integers so that they can be used to calculate the 8th digit of the GTIN-8 product code)
oddDigitList.append(int(variable[i]))
return variable
そして、ここで私が得たエラーメッセージです:
oddDigitList.append(int(variable[i]))
ValueError: invalid literal for int() with base 10: 'N'
誰かが私のコードが間違っている理由を説明し、私の機能の正しいバージョンを提供していただけます。私はこれが何をしたいです推測している
'variable'の内容を見てください。エラーが示唆するように、そこには 'N'があります。 – njzk2
また、[MCVE]の作成方法についても学んでください。あなたのケースでは、エラーを再現するために、エラーが発生したときに関数本体**と**関数引数の両方が明確に必要です。 –
'変数'は7桁の整数です –