python练习题2

python期考复习题

目录

1. 判断n**2的值每一位互不相同​编辑

2. 密码

3. 图书版号

4. 情感分类矩阵

5. 计算数对个数


1. 判断n**2的值每一位互不相同

def isdiff(n):s=str(n)for i in range(len(s)):for j in range(len(s)):if i!=j:if s[i]==s[j]:return Falsereturn Truelow=eval(input())
high=eval(input())for i in range(low,high+1):if isdiff(i*i):print(i,end=" ")print(i*i)

该题难点主要在于如何构建函数判断数字内部每一位互不相同,可以将数字转换为字符串,使用for循环的嵌套遍历该字符串(如上),也可以使用count函数(如下):

def isdiff(n):s=str(n)for c in s:if s.count(c)>1:return Falseelse:return Truelow=eval(input())
high=eval(input())for i in range(low,high+1):if isdiff(i*i):print(i,end=" ")print(i*i)

2. 密码

s='abcdefghijklmnopqrstuvwxyz'  # 定义一个包含所有小写字母的字符串
dic={}   # 定义一个空字典,用于存储每个字母的加密映射
for k in s:i=s.index(k)dic[k]=s[i:]+s[:i]     # 为每个字母生成加密映射,将字母表分为两部分,并按顺序拼接K=input().lower()   # 获取密钥,并将其转换为小写
len_k=len(K)    # 获取密钥的长度
C=input()    # 获取需要加密的文本
M=''    # 定义一个空字符串,用于存储解密后的文本for i in range(len(C)):  # 遍历需要加密的文本的每个字符k = K[i % len_k]   # 获取当前字符对应的密钥字母c = C[i]           # 获取需要加密的文本的当前字符idx = dic[k].index(c.lower())  # 计算当前字符在加密映射中的索引m = s[idx]         # 根据索引获取解密后的字符if c.isupper():    # 如果原始字符是大写m = m.upper()  # 将解密后的字符也转换为大写M += m             # 将解密后的字符添加到解密文本中print(M)    #输出结果

难点:题目很长,而且较难理解,我也不是很懂,备注里是GPT的解释

3. 图书版号

s=input()
key=int(s[-1])    #获取验证码
s=s[:-2]    #获取删除验证码后的字符串,不然会很难做替换那一步
s1=s.replace('-','')
ls=[int(s1[i])*(i+1) for i in range(len(s))]
sum1=sum(ls)
x=sum1%11        #x是计算出来的验证码
if x==10:x='X'        #记得加引号,不然会报错,别问我怎么知道的
if x==key:print('Right')
else:print('{}-{}'.format(s,x))

这题我认为难点主要是数据类型要保持一致,在计算途中要记得使用int(),str()等强制转换数据类型,不然很容易报错

4. 情感分类矩阵

ls2=eval(input())    
ls1=eval(input())    
'''注意先输入的是真实值,后输入的是预测值,但是在描述计算方法时,先讲的是预测值,
后讲的是真实值.这里为了方便边写程序,是按照计算方法的描述顺序写的下面的for循环,
所以先输入ls2后输入ls1
'''                     TP=FP=FN=TN=0        #使用连续初始化更加简洁for i in range(10):if ls1[i]==1 and ls2[i]==1:TP+=1elif ls1[i]==1 and ls2[i]==0:FP+=1elif ls1[i]==0 and ls2[i]==1:FN+=1elif ls1[i]==0 and ls2[i]==0:    #用else也一样,elif会更严谨,如果输入错了也会报错TN+=1#print(TP,FP,FN,TN)    在编写程序时可以让其输出看看值P=round(TP/(TP+FP),2)
R=round(TP/(TP+FN),2)
F1=round(2/(1/P+1/R),2)if F1>=0.9:J='强'
elif 0.9>F1>=0.8:J='较强'
elif 0.8>F1>=0.7:J='中等'
elif 0.7>F1>=0.6:J='一般'
elif F1<0.6:J='差'print(P,R,F1,J)

这题的难点我认为不在于编写,在于输入时是先真实后预测,但在如何计算的描述中是先预测后真实,输入语句容易写反,具体在注释中已经说明。

5. 计算数对个数

lst=eval(input())
C=eval(input())
cnt=0
for i in range(len(lst)):for j in range(len(lst)):if i!=j:            #注意判断不能是同一个位置的值if lst[i]-lst[j]==C:cnt+=1print(cnt)

本题较为简单,直接遍历列表然后输出即可,注意最后一行不用输出,如果需要输出:

lst=eval(input())
C=eval(input())
lst1=[]            #初始化一个列表用于存储结果
cnt=0
for i in range(len(lst)):for j in range(len(lst)):if i!=j:if lst[i]-lst[j]==C:lst1.append((i,j))cnt+=1print(cnt)
print("上例中包含{}个数对,分别为:"。format(cnt),end='')
for i in range(cnt):print(lst1[i],end='')    #引号内为空if i==cnt-1:breakprint("、",end='')    #引号内为空
'''如果直接输出整句话:
print("上例中包含{}个数对,分别为:"。format(cnt),end='')
for i in lst1:print(i,end="、")
句末会多出一个顿号'''

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

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

相关文章

Python输入与输出基础

Python输入与输出基础 引言 Python是一种非常直观且功能强大的编程语言&#xff0c;它允许用户轻松地处理输入和输出操作。无论是从用户那里获取数据&#xff0c;还是将结果展示给用户&#xff0c;Python都提供了简单易用的函数和方法。 一、输入数据 在Python中&#xff0c…

LSTM理解

目录 一、LSTM的本质 二、LSTM的原理 三、LSTM的应用 本文将从LSTM的本质、LSTM的原理、LSTM的应用三个方面&#xff0c;带您一文搞懂长短期记忆网络Long Short Term Memory | LSTM。 一、LSTM的本质 RNN 面临问题&#xff1a;RNN&#xff08;递归神经网络&#xff09;在处理…

数字时代的软件架构:持续架构的兴起与架构师角色的转变

在数字化浪潮的推动下&#xff0c;软件架构领域正经历着前所未有的变革。Eoin Woods在《数字时代的软件架构》演讲中&#xff0c;深入探讨了这一变革&#xff0c;并提出了“持续架构”这一概念。本文将基于Eoin的观点&#xff0c;结合个人理解&#xff0c;探讨持续架构的重要性…

Kali系统的中英文切换

执行命令&#xff1a;sudo dpkg-reconfigure locales 命令作用&#xff1a;重新生成locales配置文件并允许你重新选择所需的语言环境。 中文&#xff1a;zh_CN.UTF-8 UTF-8 英文&#xff1a;en_US.UTF-8 UTF-8 用空格键选中和取消选项。 要设置成中文&#xff1a;取消选择en…

【Git】远程仓库

一、常用的托管服务[远程仓库] 二、注册码云 三、创建远程仓库 四、配置SSH公钥 五、操作远程仓库 5.1、添加远程仓库 5.2、查看远程仓库 5.3、推送到远程仓库 5.4、 本地分支与远程分支的关联关系 5.5、从远程仓库克隆 5.6、从远程仓库中抓取和拉取 5.7、解决合并冲突 一、常…

Labview_Occurrencel(事件发生)

PS&#xff1a;这里遇到 一个很Low的事情&#xff1a; 在停止第二个while循环的时候出现了停止不了的情况。因为等待事件发生设置的超时时间为:-1。所以等事件发生后出现了条件接线端已经执行的情况&#xff0c;所以当下次事件发生时未能及时停止。初版的停止设置如下图&#x…

MMM部署

一.MySQL&#xff0c;MySQL主主复制管理器&#xff09; 是一套支持双主故障切换和双主日常管理的脚本程序。MMM 使用 Perl 语言开发&#xff0c;主要用来监控和管理 MySQL Master-Master &#xff08;双主&#xff09;复制&#xff0c;虽然叫做双主复制&#xff0c;但是业务上同…

六西格玛项目实战:数据驱动,手机PCM率直线下降

在当前智能手机市场日益竞争激烈的背景下&#xff0c;消费者对手机质量的要求达到了前所未有的高度。PCM&#xff08;可能指生产过程中的某种不良率或缺陷率&#xff09;作为影响手机质量的关键因素&#xff0c;直接关联到消费者满意度和品牌形象。为了应对这一挑战&#xff0c…

XGboost详解

文章最前&#xff1a; 我是Octopus&#xff0c;这个名字来源于我的中文名–章鱼&#xff1b;我热爱编程、热爱算法、热爱开源。所有源码在我的个人github &#xff1b;这博客是记录我学习的点点滴滴&#xff0c;如果您对 Python、Java、AI、算法有兴趣&#xff0c;可以关注我的…

设计模式原则——接口隔离原则

设计模式原则 设计模式示例代码库地址&#xff1a; https://gitee.com/Jasonpupil/designPatterns 接口隔离原则 要求程序员尽量将臃肿庞大的接口拆分为更小的和更具体的接口&#xff0c;让接口中只包含客户感兴趣的方法接口隔离原则的目标是降低类或模块之间的耦合度&…

智慧校园-缴费管理系统总体概述

在构建现代化教育环境的过程中&#xff0c;智慧校园缴费管理系统脱颖而出&#xff0c;成为提升校园财务管理效率与服务质量的关键一环。缴费管理系统需要精心设计&#xff0c;通过科技力量&#xff0c;让原本繁琐的缴费流程变得简单快捷&#xff0c;同时增强家校之间的互动与信…

光学相机市场格局:中国光学相机市场评估及未来发展趋势研究报告

欢迎关注GZH《光场视觉》 光学相机行业定义 光学相机是一种利用光学镜头和感光材料&#xff08;如胶片&#xff09;或数字传感器来捕捉图像的装置。光学相机&#xff0c;也常被称作传统相机或胶片相机&#xff0c;其工作原理基于光的折射和聚焦。当光线通过相机的镜头进入时&…

分享暄桐林曦老师的精进心法

暄桐是一间传统美学教育教室&#xff0c;创办于2011年&#xff0c;林曦是创办人和授课老师&#xff0c;教授以书法为主的传统文化和技艺&#xff0c;皆在以书法为起点&#xff0c;亲近中国传统之美&#xff0c;以实践和所得&#xff0c;滋养当下生活。      清风雅致林曦老…

Arduino - OLED

Arduino - OLED Arduino - OLED Arduino通过u8g2库驱动OLEDU8g2 驱动oled自定义中文字库 The OLED (Organic Light-Emitting Diode) display is an alternative for LCD display. The OLED is super-light, almost paper-thin, flexible, and produce a brighter and crisper…

PIP一些问题解决办法

研究生期间遇到关于PIP一些问题报错以及解决办法的汇总 pip安装报错&#xff1a;is not a supported wheel on this platform 本节转自 https://blog.csdn.net/happywlg123/article/details/107281936 ​ 出现这个问题&#xff0c;是由于这个whl和系统python版本不匹配导致的。…

NewspaceGPT带你玩系列之美人鱼图表(类图)

目录 注册一个账号&#xff0c;用qq邮箱&#xff0c;然后登录选一个可用的Plus&#xff0c;不要选3.5探索GPT今天的主角是开始寻梦美人鱼图表我选第二个试一下问答Summary 自定义类图玩一下问答 关于类图的补救方案结论关注我&#xff0c;不迷路&#xff0c;共学习&#xff0c;…

stencil 组件

stencil 组件 装饰器生命周期应用加载事件 组件定义组件如何响应数据变化 组件使用如何传递 slot如何暴露组件内部的方法供外部使用&#xff1f;Element 装饰器 Host 组件样式函数组件 stencil 提供一些装饰器、生命周期钩子和渲染函数去编写一个组件。 装饰器 装饰器是一组用…

【Linux】高级IO——五种IO模型和基本概念 ,非阻塞IO,fcntl,实现非阻塞IO,同步通信和异步通信

文章目录 Linux高级IO1. 五种IO模型1.1 阻塞IO1.2 非阻塞IO1.3 信号驱动IO1.4 IO多路转接1.5 异步IO 2. 同步通信和异步通信3. 阻塞和非阻塞 Linux高级IO 1. 五种IO模型 IO是什么&#xff1f; IO是计算机领域中的缩写&#xff0c;指的是输入/输出&#xff08;Input/Output&…

狂撒1.69亿美元却对加密避而不谈?揭秘加密大选背后的金钱政治

撰文&#xff1a;Jesse Hamilton 来源&#xff1a;Coindesk 编译&#xff1a;Ning 在政治选举中&#xff0c;有钱能使鬼推磨这句俗语体现地淋漓尽致&#xff0c;而直接诞生的产物&#xff0c;就是独具特色的政治行动委员会&#xff08;PAC&#xff09;&#xff0c;各类型捐赠者…

你的钱花得值不值?简谈FMEA培训的投资与回报

在探讨 FMEA&#xff08;失效模式及影响分析&#xff09;培训是否值得投资时&#xff0c;需要综合考虑多个方面。 从投资的角度来看&#xff0c;FMEA 培训通常需要一定的费用支出&#xff0c;包括培训课程的费用、培训期间员工的时间成本以及可能涉及的培训材料和设备成本。 然…