Python第4次作业

发布时间:2026/10/31 16:57:00

Python第4次作业 第1题位运算 计算56及-18的所有位运算符结果并使在注释中体现计算过程【代码】# 1.位运算 计算56及-18的所有位运算符结果并使在注释中体现计算过程 # 数值定义 a 56 b -18 # bin()打印二进制负数输出带负号底层计算机存储为补码 # 56 二进制(正数原码) 00111000 # 18 原码00010010-18补码 ~18 1 print(--------位运算 按位与--------) res_and a b 规则对应位都为1结果才是1 5600111000 -18补码11101110 print(f{a} {b} {res_and}) print(\n-------位运算 | 按位或-------) res_or a | b # 任意一位为1结果位为1 print(f{a} | {b} {res_or}) print(\n------ ~按位取反-------) res_not_a ~a res_not_b ~b ~x -(x1) ~56 -(561) -57 ~(-18) -(-181) 17 print(f~{a} {res_not_a}) print(f~{b} {res_not_b})【运行结果】第2题完成文件读取功能任意读取某个文件内容时请编写装饰器实现写出文件时增加当前系统时间并打印至控制台最后一行【代码】 2.完成文件读取功能任意读取某个文件内容时 请编写装饰器实现写出文件时增加当前系统时间并打印至控制台最后一行 from datetime import datetime # 定义装饰器 def add_time_log(func): def wrapper(*args, **kwargs): #执行被装饰的读写函数 result func(*args, **kwargs) #获取当前系统时间 now_time datetime.now().strftime(%Y-%m-%d %H:%M:%S) with open(out.txt, a,encodingutf-8) as f: f.write(f\n{now_time}\n) #控制台输出时间 print(f文件末尾写入系统时间{now_time}) return result return wrapper # 读取文件函数使用装饰器 add_time_log def read_file(file_path): #读取任意文件内容 with open(file_path, r, encodingutf-8) as f: content f.read() print(content) return content # 测试代码 if __name__ __main__: #换成本机的文件路径 read_file(test.txt)【运行结果】第3题给定一个包含n1个整数的数组nums其数字在1到n之间(包含1和n),可知至少存在一个重复的整数 假设只有一个重复的整数请找出这个重复的数【代码】 3.给定一个包含n1个整数的数组nums其数字在1到n之间(包含1和n), 可知至少存在一个重复的整数 假设只有一个重复的整数请找出这个重复的数 def findDuplicates(nums): #弗洛依德 slow nums[0] fast nums[0] # 第一阶段快慢指针相遇 while True: slow nums[slow] fast nums[nums[fast]] if slow fast: break # 第二阶段一个指针从头出发 p1 nums[0] p2 slow while p1 ! p2: p1 nums[p1] p2 nums[p2] return p1 # 测试 if __name__ __main__: arr [1,2,2,3,4,2] print(重复数字,findDuplicates(arr))【运行结果】第4题完成登录系统登录时数据使用序列化和反序列化【代码】import pickle import os FILE_NAME user.pkl # 序列化保存用户数据 def save_users(user_data): with open(FILE_NAME, wb) as f: pickle.dump(user_data, f) # 反序列化读取用户 def load_user(): # 判断文件存在并且不是空文件 if os.path.exists(FILE_NAME) and os.path.getsize(FILE_NAME) 0: with open(FILE_NAME, rb) as f: data pickle.load(f) return data else: return {} # 注册功能 def register(username,pwd): user_data load_user() if username in user_data: print(账号已经存在) return user_data[username] pwd save_users(user_data) # 变量统一是 user_data print(注册成功) # 登录功能 def login(username,pwd): user_data load_user() if username not in user_data: print(该账号不存在) return if user_data[username] pwd: print(登录成功) else: print(密码错误) if __name__ __main__: while True: op input(1‑注册 2‑登录 3‑退出\n请输入操作) if op 1: name input(输入用户名) pw input(输入密码) register(name,pw) elif op 2: name input(用户名) pw input(密码) login(name,pw) elif op 3: print(程序退出) break【运行结果】
延伸阅读

更多相关文章

2026/10/27 8:17:58

正则化、Dropout 没救回过拟合,我用高级提示词重构数据才止血

正则化、Dropout 没救回过拟合,我用高级提示词重构数据才止血 两周前的一个下午,我盯着训练日志,曲线像预谋好一样在第 35 个 epoch 分道扬镳:训练准确率直冲 99%,验证集却死死卡在 83.5%。这是典型的过拟合。我立刻加上 L2 正则化,又把 dropout 概率从 0.3 调到 0.5,early st…

2026/10/27 7:16:48

第 3 篇:PKI——是谁在给你的网站「盖章」?

第 3 篇:PKI——是谁在给你的网站「盖章」? 标签:#PKI #HTTPS #网络安全 #证书 PKI 到底在解决什么问题? 第 1 篇我们讲了密码学六大构件,第 2 篇讲了 TLS 握手的全过程。看起来一切都很美好——客户端拿到服务器证书…

2026/10/25 0:16:18

ESP32 CAN通信实战指南:TWAI驱动、硬件设计与调试全解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/31 16:54:34

自建VoiceStudio:本地声音克隆与语音合成工作台实战指南

做配音交付的朋友,最近应该都有同一个感受:客户不再只满足于"找个声音像的人念一遍",而是会问"能不能用我们老板的声音做企业培训视频""能不能复刻这期播客主播的语气""这个宣传片想用固定一个人的声线批…

2026/10/31 16:54:34

VS Code与MinGW搭建高效C语言开发环境指南

1. 为什么选择VS Code作为C语言开发环境? 作为一名带过三届计算机专业新生的助教,我见过太多同学在C语言环境配置上栽跟头。VS Code之所以成为我的首推工具,是因为它完美平衡了轻量化和功能性——安装包仅70MB左右,却能通过插件扩…

2026/10/31 16:54:34

VS Code配置C语言开发环境全攻略

1. 为什么选择VS Code作为C语言开发环境?作为一名带过三届计算机专业新生的助教,我见过太多同学在C语言环境配置上栽跟头。Visual Studio虽然开箱即用,但体积臃肿;Dev-C又过于老旧。VS Code凭借其轻量级(安装包仅80MB左…

2026/10/31 16:54:34

BPSK匹配滤波原理与根升余弦成形实战

简介:本资源是一份面向通信工程专业本科生及数字信号处理初学者的MATLAB仿真实验包,聚焦BPSK调制系统中匹配滤波与脉冲成形的核心原理验证。通过仿真完整实现BPSK信号生成、根升余弦成形滤波、加性高斯白噪声信道模拟、接收端匹配滤波及误码率统计全过程…

2026/10/31 16:54:34

前端后台翻译三重语义分层指南

1. 这个看似简单的翻译问题,为什么让团队吵了三天?“前台”到底该翻成 frontend 还是 front office?“后台”写成 backend 还是 back office?上周在某跨平台系统重构会上,前端组和后端组的两位技术负责人对着一份中英双…

2026/10/31 16:49:34

金融数据分析转型:AI技术如何解决行业痛点

1. 智能金融分析的行业痛点与转型契机金融投资研究领域正面临前所未有的数据挑战。传统投研团队每天需要处理上百份财报、数千条新闻资讯和实时市场数据,分析师平均花费60%的工作时间在数据收集和基础处理上。这种低效模式导致三个核心痛点:信息过载与处…

2026/10/30 20:55:10

全国计算机二级C语言真题PDF高效刷题指南

简介:这份PDF是全国计算机二级C语言考试的试题与答案解析,专为备考二级C语言的考生准备。内容涵盖C语言特点与设计理念、程序基本组成单位、main函数执行流程、函数嵌套调用规则、标识符命名规范、整型实型字符型数据类型、八进制十六进制数合法形式、运…

2026/10/30 20:55:10

requests+BeautifulSoup:爬虫抓取h1标题的入门实战指南

简介:一份以实战为导向的Python爬虫入门资源,面向具备基本编程基础、希望快速掌握网络数据抓取的初学者,可解决从零编写简单爬虫的常见困惑。实例以requests库发送HTTP请求、BeautifulSoup解析HTML文档,完整演示从网页中提取 标题…

2026/10/30 20:55:09

递推最小二乘参数辨识MATLAB编程:二阶系统与渐消记忆实现

简介:这是一篇面向控制系统、信号处理与机器学习等领域学习者的最小二乘参数辨识程序说明文档。资源共包含一个docx格式文档,压缩包大小七十八KB,内容围绕递推最小二乘算法和渐消记忆最小二乘算法展开:先构造一个极点位于单位圆内…

2026/10/31 0:02:41

猫狗目标检测数据集:VOC/COCO/YOLO三格式一体化实战包

简介:本资源是一套面向计算机视觉初学者与YOLO目标检测实践者的猫狗图像数据集及配套开发工具包,专为快速上手目标检测模型训练而设计。资源包含1000张真实场景高清猫狗图片,标注质量高,同时提供VOC(XML)、…

2026/10/31 0:02:41

HDU2017多校标程复现:算法竞赛工程化真题沙盒

简介:本资源为2017年HDU多校联合训练第一场官方配套资料,面向ACM程序设计竞赛备赛学生、算法爱好者及高校编程集训队成员,旨在提供权威解题参考与完整测试验证环境。压缩包共40个文件,含15份C标程(覆盖全部赛题&#x…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑