更新时间: 试题数量: 购买人数: 提供作者:

有效期: 个月

章节介绍: 共有个章节

收藏
搜索
题库预览
医保电子凭证验证码加密(医疗场景) 场景:医保电子凭证的6位数字验证码,在传输过程中需加密,规则如下: 奇数位(第1、3、5位)数字乘以2,除以10的余数;偶数位(第2、4、6位)数字加上7,除以10的余数; 将整个数组反转(第一位变第六位,第二位变第五位,依此类推)。 要求:(1)定义函数encrypt_medical_code(s),参数s为6位数字字符,返回加密后的验证码;(2)主程序中输入原始6位验证码,调用函数并输出加密后的验证码。 示例: 明文(原始验证码):"135792" 步骤1: 第1位(奇):1×2=2→2;第2位(偶):3+7=10→0; 第3位(奇):5×2=10→0;第4位(偶):7+7=14→4; 第5位(奇):9×2=18→8;第6位(偶):2+7=9→9 步骤2:反转字符串得到:最终密文:"984002" def encrypt_medical_code(s): # 校验输入:必须是6位数字字符 if len(s) != 6 or not s.isdigit(): return "输入格式错误,需为6位数字字符" temp = "" # 步骤1:奇数位×2取余10,偶数位+7取余10(不用enumerate,改用索引遍历) for i in range(6): # i从0到5,对应第1到第6位 num = int(s[i]) # 判断奇偶位(i+1为位号:1/3/5是奇数位,2/4/6是偶数位) if (i + 1) % 2 == 1: new_num = (num * 2) % 10 else: new_num = (num + 7) % 10 temp.append(new_num) # 步骤2:反转数组 temp = temp[::-1] # 将数字列表转为字符串 return temp plain = input("请输入6位原始医保验证码:") encrypted = encrypt_medical_code(plain) print("原始验证码:{},加密后验证码:{}".format(plain, encrypted))
题目背景:定义交通工具父类Vehicle,包含型号属性和行驶方法run()。继承Vehicle类创建Car(汽车)和Bike(自行车)子类,重写run()方法实现不同交通工具的行驶描述。以下代码存在多处错误,请找出3处及以上错误并改正。 class Vehicle: def __init__(self, model): self.model = model # 缺少父类方法定义 error def run(self): print(f"{self.model}汽车:以100km/h行驶") class Car(Vehicle): def run(self): print(f"{self.model}汽车:以100km/h行驶") class Bike(Vehicle): def run(self, speed): print(f"{self.model}自行车:以{speed}km/h骑行") my_car = Car my_car.run() my_bike = Bike("山地车") my_bike.run(15) 错误分析 方法缺失:父类Vehicle仅定义了构造方法,未实现run()方法,无法作为多态的统一接口; 语法错误:Bike类定义时,应为class Bike(Vehicle):; 多态违背:Bike类的run()方法增加了speed参数,与子类Car的run()方法参数不一致,破坏多态; 实例化错误:my_car变量未创建实例且未传型号参数,应为my_car = Car("奔驰C级")。 改正后代码 python class Vehicle: def __init__(self, model): self.model = model # 补充父类run方法,定义统一接口 def run(self): print(f"{self.model}:开始行驶") class Car(Vehicle): def run(self): # 重写方法,保持参数一致 print(f"{self.model}汽车:以100km/h行驶") class Bike(Vehicle): # 改为class def run(self): # 移除多余参数,通过内部定义默认速度实现差异化 print(f"{self.model}自行车:以15km/h骑行") # 正确实例化并传入型号参数 my_car = Car("奔驰C级") my_car.run() my_bike = Bike("山地车") my_bike.run()