基于Python的身份證驗證識別和數(shù)據(jù)處理詳解
根據(jù)GB11643-1999公民身份證號碼是特征組合碼,由十七位數(shù)字本體碼和一位數(shù)字校驗碼組成,排列順序從左至右依次為:
六位數(shù)字地址碼八位數(shù)字出生日期碼三位數(shù)字順序碼一位數(shù)字校驗碼(數(shù)字10用羅馬X表示)
校驗系統(tǒng):
校驗碼采用ISO7064:1983,MOD11-2校驗碼系統(tǒng)(圖為校驗規(guī)則樣例)
用身份證號的前17位的每一位號碼字符值分別乘上對應的加權(quán)因子值,得到的結(jié)果求和后對11進行取余,最后的結(jié)果放到表2檢驗碼字符值..換算關(guān)系表中得出最后的一位身份證號碼
代碼:
# coding=utf-8 # Copyright 2018 The HuggingFace Inc. team. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. """Convert BERT checkpoint.""" import argparse import torch from transformers import BertConfig, BertForPreTraining, load_tf_weights_in_bert from transformers.utils import logging logging.set_verbosity_info() def convert_tf_checkpoint_to_pytorch(tf_checkpoint_path, bert_config_file, pytorch_dump_path): # Initialise PyTorch model config = BertConfig.from_json_file(bert_config_file) print("Building PyTorch model from configuration: {}".format(str(config))) model = BertForPreTraining(config) # Load weights from tf checkpoint load_tf_weights_in_bert(model, config, tf_checkpoint_path) # Save pytorch-model print("Save PyTorch model to {}".format(pytorch_dump_path)) torch.save(model.state_dict(), pytorch_dump_path) if __name__ == "__main__": parser = argparse.ArgumentParser() # Required parameters parser.add_argument( "--tf_checkpoint_path", default=None, type=str, required=True, help="Path to the TensorFlow checkpoint path." ) parser.add_argument( "--bert_config_file", default=None, type=str, required=True, help="The config json file corresponding to the pre-trained BERT model. \n" "This specifies the model architecture.", ) parser.add_argument( "--pytorch_dump_path", default=None, type=str, required=True, help="Path to the output PyTorch model." ) args = parser.parse_args() convert_tf_checkpoint_to_pytorch(args.tf_checkpoint_path, args.bert_config_file, args.pytorch_dump_path)
到此這篇關(guān)于基于Python的身份證驗證識別和數(shù)據(jù)處理詳解的文章就介紹到這了,更多相關(guān)python 身份驗證識別內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python基礎(chǔ)教程之while循環(huán)用法講解
Python中除了for循環(huán)之外還有一個while循環(huán),下面這篇文章主要給大家介紹了關(guān)于Python基礎(chǔ)教程之while循環(huán)用法講解的相關(guān)資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下2022-12-12Python THREADING模塊中的JOIN()方法深入理解
這篇文章主要介紹了Python THREADING模塊中的JOIN()方法深入理解,本文用簡潔易懂的語言總結(jié)了對JOIN()方法的理解,不同于其它文章,需要的朋友可以參考下2015-02-02