ToB企服应用市场:ToB评测及商务社交产业平台

标题: 车辆识别码VIN生成小工具 [打印本页]

作者: 灌篮少年    时间: 2025-2-12 16:21
标题: 车辆识别码VIN生成小工具
以下是我对vin规则理解之后自己编写的生成vin码的代码 分享
  1. import random
  2. def generate_vin():
  3.     characters = "0123456789ABCDEFGHJKLMNPRSTUVWXYZ"
  4.     weights = [8, 7, 6, 5, 4, 3, 2, 10, 0, 9, 8, 7, 6, 5, 4, 3, 2]
  5.     vin = ""
  6.     for i in range(17):
  7.         char = random.choice(characters)
  8.         vin += char
  9.     # 把生成的字符串含有字母的全部转换成对应的数字
  10.     translation_table = str.maketrans('ABCDEFGHJKLMNPRSTUVWXYZ', '12345678123457923456789')
  11.     # 要替换的字符串
  12.     text = vin
  13.     # 使用 translate() 方法进行替换
  14.     result = text.translate(translation_table)
  15.     # 把返回的支付穿转化成列表
  16.     lis1 = list(result)
  17.     # 把列表中的字符串类型转化成整数型
  18.     weights_int = [int(x) for x in lis1]
  19.     # 把个列表的字分别进行相乘求和
  20.     summed = list(map(lambda x, y: x * y, weights_int, weights))
  21.     summ1 = sum(list(summed)) % 11
  22.     # 判断当余数等于10的时使用“x”替代
  23.     if summ1 == 10:
  24.         summ1 = 'X'
  25.     # 在第九位插入余数
  26.     result = text[:8] + str(summ1) + text[9:]
  27.     return result
  28. # 生成 10 条 VIN 码
  29. vin_list = []
  30. for _ in range(10):
  31.     vin = generate_vin()
  32.     vin_list.append(vin)
  33. # 打印生成的 10 条 VIN 码
  34. for vin in vin_list:
  35.     print(vin)
复制代码
以下是我使用该代码批量生成的vin码


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4