【python】JANコードからASINコードに変換する関数【書籍用】
下記の記事の逆の処理を行うコードを記載する。
書籍のJANコード13桁から、ASINコード10桁を作成するコード。
ISBN:13桁(978XXXXXXXXXD)
ISBN:10桁(XXXXXXXXXD)
ASIN:10桁(XXXXXXXXXD')
XX〜は同じだが、DとD’は別の数字。
ASINのチェックデジットについては、こちらを参照。
①チェックデジットを除いた左側の桁から 10,9,8‥‥2 を掛けてそれらの和を取る。
②和を 11 で割って出た余りを 11 から引く。
③10だった時は、”X"とする
関数は下記の通り。jan13は13桁のコードを入力のこと。
def jan_to_asin(jan13):
s = str(jan13)[3:12]
a = 10
c = 0
for i in range(0, len(s)):
c += int(s[i]) *(a-i)
d = c % 11
d = 11 - d
if d == 10:
d = "X"
return str(s) + str(d)
ASIN = jan_to_asin(jan13)
いいなと思ったら応援しよう!
スタートアップ支援と、社内スタートアップをしながら、実務未経験から独学でプログラミング勉強中。主にpython。スクレイピング、機械学習から始めて、最近はDjangoを学習し、WEBサービス作成中。独学されている初心者の方向けに、技術の記事を中心に書いていきます。