仕事柄『退屈なこと』・・・というよりは、『テマヒマのかかる単純作業』が結構あるので、なんとかならないかと昔からずっと思ってました。

 で、Amazonでみつけました。



なんという、キャッチーなタイトルなんでしょうか。

 コレで楽ができる・・・じゃなく、生産性の向上と作業効率のアップが図れるのではないかと思い、超!高額な本でしたが買いました。

 いま、第4章まで読み終わったところですが、メッチャ退屈内容・・・いやいや、基本的な事項から丁寧に説明してあります。『ノンプログラマー向け』ということですので、私でもいまのところなんとかついていってます(たぶん・・・)。

 とりあえず、第4章まで説明してある内容を使って、『マイナンバーチェッカー』を作ってみようと思い立ちました。

 マイナンバーチェッカーとは、マイナンバーのチェックデジットを利用して入力されたマイナンバーが正しいかどうかチェックするものです。以前、Excelで作成したものです。
(以前の記事は、コチラから)
マイナンバー(個人)の検査用数字を計算してみた。
【試作品】マイナンバーチェッカー作ってみました。【無保証】

 で、Pythonでつくったら、こんな感じ。



def mynumberchecker(mynumber):
    p = list(str(mynumber))
    q = [6,5,4,3,2,7,6,5,4,3,2]
    r = 0
    s = 0
    for i in range(11):
        r += int(p[i])*int(q[i])
    if r % 11 <= 1:
        s = 0
    else:
        s = 11 - (r % 11)
    if int(mynumber[11]) == s:
        print(True)
    else:
        print(False)

mynumberchecker('899889637687')
mynumberchecker('694258767650') 
mynumberchecker('898571263706') 
mynumberchecker('436433394235') 
mynumberchecker('129439343136') 
mynumberchecker('333469511765') 
mynumberchecker('266455097371') 
mynumberchecker('599674374886') 
mynumberchecker('751099601057') 
mynumberchecker('637248495969') 

mynumberchecker('899839637687')
mynumberchecker('692258767650') 
mynumberchecker('898571363706') 
mynumberchecker('416433394235') 
mynumberchecker('929439343136') 
mynumberchecker('333469501765') 
mynumberchecker('266455057371') 
mynumberchecker('599274374886') 
mynumberchecker('711099601057') 
mynumberchecker('637248494969') 

 サンプルのマイナンバーは、疑似マイナンバーくんからおかりしました。最初の10個は正しいナンバー、続く10個は誤ったナンバーです。

 しかし・・・。データ型がなんだかよくわからない。これであってるんだろうか・・・。

 って感じの現状なので、本当にこの本を読んだら退屈な仕事をPythonにまかせられるようになるかどうかは、現時点ではビミョー(・_・;)です。

 高い本だったので、がんばって最後まで読み進めます。

0 コメント :

コメントを投稿