随机生成车架号、统一社会信用代码和组织机构号

统一社会信用代码的具体赋码规则如下:
第一部分(第1位):登记管理部门代码。暂按国务院序列规则,5表示民政部门。
第二部分(第2位):机构类别代码。“1”表示社会团体、“2”表示民办非企业单位、“3”表示基金会、“9”表示其他。

前两位的含义如下:
机构编制机关:11打头
机构编制事业单位:12打头
机构编制中央编办直接管理机构编制的群众团体:13打头
机构编制其他:19打头
民政社会团体:51打头
民政民办非企业单位:52打头
民政基金会:53打头
民政其他:59打头
工商企业:91打头
工商个体工商户:92打头
工商农民专业合作社:93打头
其他:Y1打头

第三部分(第3-8位):登记管理机关行政区划码,参照GB/T 2260中华人民共和国行政区划代码标准。(登记机关所在地的行政区划)。
第四部分(第9-17位):主体标识码(组织机构代码),其中第17位为主体标识码(组织机构代码)的校验码。第17位校验码算法规则按照《全国组织机构代码编制规则》(国标GB11714—1997)计算。
第五部分(第18位):统一社会信用代码的校验码。第18位校验码算法规则按照《GB -2015 法人及其他组织统一社会信用代码编制规则》计算。

统一社会信用代码需要包含组织机构代码,下面的代码是先随机生成信用代码的前两位,再手动录入地区行政区域代码,再随机生成组织机构代码,这样就得到统一社会信用编码的前十七位,最后再计算其校验位得到完整的统一社会信用代码。

import randomdef unified_social_credit_code(uCode):'''根据输入的前十七位数字,计算统一社会信用编码的校验位,并返回包含校验通过码的完整统一信用代码'''uCode_list = list(uCode)# 统一社会信用编码字母对应的数字unified_digital_map = {'A': 10, 'B': 11, 'C': 12, 'D': 13, 'E': 14, 'F': 15, 'G': 16,'H': 17, 'J': 18, 'K': 19, 'L': 20, 'M': 21, 'N': 22,'P': 23, 'Q': 24, 'R': 25, 'T': 26,'U': 27, 'W': 28, 'X': 29, 'Y': 30,"0": 0, "1": 1, "2": 2, "3": 3, "4": 4,"5": 5, "6": 6, "7": 7, "8": 8, "9": 9}# 统一社会信用编码位置的权值W = [1, 3, 9, 27, 19, 26, 16, 17, 20, 29, 25, 13, 8, 24, 10, 30, 28]#统一社会信用代码的校验位取值umod = ['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G','H','J','K','L','M','N','P','Q','R','T','U','W','X','Y','0']# 计算统一社会信用代码的校验位sum = 0for i in range(17):sum = sum + int(unified_digital_map[uCode_list[i]]) * W[i]C18 = 31 - sum % 31uCode = uCode + umod[C18]return uCodedef random_organization_code():'''随机生成九位组织机构代码'''o_digital_map = {'A': 10, 'B': 11, 'C': 12, 'D': 13, 'E': 14, 'F': 15, 'G': 16,'H': 17, 'I': 18, 'J': 19, 'K': 20, 'L': 21, 'M': 22, 'N': 23,'O': 24, 'P': 25, 'Q': 26, 'R': 27, 'S': 28, 'T': 29,'U': 30, 'V': 31, 'W': 32, 'X': 33, 'Y': 34, 'Z': 35,'0': 0, '1': 1, '2': 2, '3': 3, '4': 4,'5': 5, '6': 6, '7': 7, '8': 8, '9': 9}# 组织机构代码的权值oW = [3, 7, 9, 10, 5, 8, 4, 2]# 组织机构代码的校验位oMOD = ['0', 'X', '9', '8', '7', '6', '5', '4', '3', '2', '1']# 随机生成九位字母或数字(不能包含I、O、Z、S、V)oCode = ''.join(random.sample('0123456789ABCDEFGHJKLMNPQRTUWXY', 9))# 替换第九位为正确的校验位sum = 0for i in range(8):sum = sum + int(o_digital_map[oCode[i]]) * oW[i]oCode = oCode.replace(oCode[8], oMOD[sum % 11])return oCodeif __name__ ==  '__main__':# 随机生成机构类型代码classCode = random.choice(['11', '12', '13', '19', '51', '52', '53', '59', '91', '92', '93', 'Y1'])# 输入行政区域代码areCode = input("请输入6位行政区域编码(如南京320100):")#随机生成组织机构代码organCode = random_organization_code()# print(classCode + areCode + organCode)uCode = unified_social_credit_code(classCode + areCode + organCode)# uCode = unified_social_credit_code('53420000503589224')print(uCode)

随机生成车架号

import random
import time
# import radar
# 车架号不应有字母O、I、Q,请调整为数字0或1
def random_vin():'''随机生成车架号'''# 车架号字母对应的数字vin_digital_map = {'A': 1, 'B': 2, 'C': 3, 'D': 4, 'E': 5,'F': 6, 'G': 7, 'H': 8, 'I': 0, 'J': 1, 'K': 2, 'L': 3,'M': 4, 'N': 5, 'O': 0, 'P': 7, 'Q': 8, 'R': 9, 'S': 2, 'T': 3,'U': 4, 'V': 5, 'W': 6, 'X': 7, 'Y': 8, 'Z': 9, "0": 0, "1": 1,"2": 2, "3": 3, "4": 4, "5": 5, "6": 6, "7": 7, "8": 8, "9": 9}# 位置的权值location_map = [8, 7, 6, 5, 4, 3, 2, 10, 0, 9, 8, 7, 6, 5, 4, 3, 2]#随机生成17位车架号,不包含I、O、Qvin = ''.join(random.sample('0123456789ABCDEFGHJKLMPRSTUVWXYZ', 17))#替换校验位sum = 0for i in range(len(vin)):sum = sum + vin_digital_map[vin[i]] * location_map[i]vin9 = sum % 11if vin9 == 10:vin = vin.replace(vin[8],'X')else:vin = vin.replace(vin[8],str(vin9))return vinprint(random_vin())

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/53560.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

将BAT脚本设置为Windows开机自启动

1. 打开“运行”对话框 方法:按下键盘上的 Win R 快捷键,这会立即打开“运行”对话框。输入命令:在“运行”对话框中,输入 shell:startup 并按回车键。 2. 访问“启动”文件夹 目的:shell:startup 命令将直接打开当…

力扣493.翻转对

class Solution {public static int MAXN 50001;public static int[] help new int[MAXN];public static void main(String[] args) {}public static int reversePairs(int[] arr) {return counts(arr, 0, arr.length - 1);}//统计l …… r上反转对的数量,同时计算…

设计模式 20 状态模式

设计模式 20 创建型模式(5):工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式结构型模式(7):适配器模式、桥接模式、组合模式、装饰者模式、外观模式、享元模式、代理模式行为型模式&#xff…

2. Python之注释及缩进以及print和input函数使用

一. Python代码中的注释及缩进 Python中注释有单行注释,多行注释,声明注释 单行注释使用符号#,从#开始,后面到本行末尾都是注释内容。多行注释可以使用’‘’ ‘’三个引号,三个引号内的内容都是注释声明注释&#x…

解决:Module build failed (from ./node_modules/sass-loader/dist/cjs.js)问题

一、问题 Module build failed (from ./node_modules/sass-loader/dist/cjs.js): Error: Cannot find module sass 二、解决方法 1.清除缓存 npm cache clean --force2.重构项目 npm install 3.更新(获取最新的)node-sass和sass-loader依赖包 npm …

JumpServer 审计录像的存储与播放

录像文件存储 1、查看 JumpServer 持久化目录配置 开打 JumpServer 配置文件 config.txt,默认路径为 /opt/jumpserver/config 查看系统配置的持久化目录,默认为 /data/jumpserver,平台日常产生的所有日志,录像都将存放在该目录下…

MySQL数据库启用安全审计功能5.7版本

MySQL数据库启用安全审计功能5.7版本,需要使用插件server_audit.dllmysql安装是没有自带这个插件的需要去下载,也可以使用我上传的 操作步骤: 1.把插件复制放到自己安装的mysql下的插件位置:比如我的 C:\zz\ProgramFiles\MySQL\…

HarmonyOs 应用基础--ArkTS-核心-基础

目录 八. ArkTS-语句-类型进阶与渲染控制 1. 对象进阶 1.1. 定义对象数组 1.2. 使用对象数组 2. 渲染控制 - ForEach 2.1. ForEach语法 2.2. ForEach使用优化代码 2.3. 案例-学生档案 实现思路 3. Math对象 4. 综合案例 -- 抽奖卡案例 4.1. 初始页面布局(静…

通信工程学习:什么是GSMP通用交换机管理协议

GSMP:通用交换机管理协议 GSMP(General Switch Management Protocol,通用交换机管理协议)是一种用于IP交换机对ATM交换机进行控制的协议。以下是对GSMP的详细解释: 一、定义与概述 GSMP是一种异步协议,它在…

【JavaSE】基础学习以及简单的计算器应用程序GUI实现

计算机中的二进制 在计算机中,二进制表示是指使用两种状态来表示数字、字符或其他数据。计算机只能处理0和1,因为它们可以通过物理设备的两种状态(如高电压或低电压)来表示。二进制数的每一位称为一个bit,而八位称为一…

在国产芯片上实现YOLOv5/v8图像AI识别-【4.4】RK3588网络摄像头推理后推流到RTSP更多内容见视频

本专栏主要是提供一种国产化图像识别的解决方案,专栏中实现了YOLOv5/v8在国产化芯片上的使用部署,并可以实现网页端实时查看。根据自己的具体需求可以直接产品化部署使用。 B站配套视频:https://www.bilibili.com/video/BV1or421T74f 前言…

React(v18)事件原理

1. 背景 在旧版 React 中,事件的处理方式不完全符合标准的事件流顺序。事件的处理顺序是: 事件监听(比如通过 addEventListener 注册的事件)捕获阶段的事件处理(即从父元素到子元素的处理)冒泡阶段的事件…

【论文阅读】01-Survey on Temporal Knowledge Graph

原文名称:Survey on Temporal Knowledge Graph 1 Introduction 目前有两种方法:基于距离模型的嵌入变换方法和基于语义匹配模型的双线性模型。它们的思想都是将包含实体和关系的知识图谱嵌入到连续的低纬度实向量空间中 时间知识图的推理有两种,第一种是…

斐纳切数列考试题

计算机二级考试有一道题 result [] a,b0,1 while a<100:print(a,end,) a, b b, ab # 0,1,1,2,3,5,8,13,21,34,55,89,

python爬虫代理ip池搭建

最近大量爬取数据的时候总会遇到被封ip的情况&#xff0c;所有打算自己搭建一个代理ip池来使用。本次使用的是开源的ip代理池项目ProxyPool 1.下载redis数据库 redis安装 这里我选择直接下载redis的解压包形式&#xff0c;方便安装。下载地址&#xff1a;发布 TPORADOWSKI/RED…

小型公司机房运维如何管理

本人从业五年&#xff0c;基本是中小型公司。经手的机房也基本是从0-1。今天浅谈一下如果管理小型公司的机房。 机房管理&#xff0c;一般分成以下几个方面&#xff1a; 1、环境管理&#xff1a;比如弱电、强点线路是否排列整齐&#xff1b;机柜门是否做到全部关闭&#xff1b…

SCAU算法竞赛入门指北

首先&#xff0c;还是欢迎各位小朋友来到华南农业大学&#xff0c;虽然不是什么ACM强校&#xff0c;但是姑且还是有这么个校队存在的。本文的主要目的是给各位OI✌️介绍下acm和oi的区别&#xff0c;给各位纯萌新介绍下你需要做什么&#xff0c;以及进校队的时间线。 ACM是什么…

UE4_后期处理_后期处理材质及后期处理体积二

效果&#xff1a; 步骤&#xff1a; 1、创建后期处理材质,并设置参数。 2、回到主界面&#xff0c;找到需要发光的物体的细节面板。 渲染自定义深度通道&#xff0c;默认自定义深度模具值为10&#xff08;需要修改此值&#xff0c;此值影响物体的亮度&#xff09;。 3、添加…

JVM系列(六) -对象的创建过程

一、摘要 在之前的文章中,我们介绍了类加载的过程和 JVM 内存布局相关的知识。本篇我们综合之前的知识,结合代码一起推演一下对象的真实创建过程,以及对象创建完成之后在 JVM 中是如何保存的。 二、对象的创建 在 Java 中,创建对象的方式有很多种,比如最常见的通过new …

Spring 循环依赖原理及解决方案

一、什么是循环依赖 循环依赖指的是一个实例或多个实例存在相互依赖的关系&#xff08;类之间循环嵌套引用&#xff09;。 举例&#xff1a; Component public class AService {// A中注入了BAutowiredprivate BService bService; }Component public class BService {// B中也…