【python】——函数

🎃个人专栏:

🐬 算法设计与分析:算法设计与分析_IT闫的博客-CSDN博客

🐳Java基础:Java基础_IT闫的博客-CSDN博客

🐋c语言:c语言_IT闫的博客-CSDN博客

🐟MySQL:数据结构_IT闫的博客-CSDN博客

🐠数据结构:​​​​​​数据结构_IT闫的博客-CSDN博客

💎C++:C++_IT闫的博客-CSDN博客

🥽C51单片机:C51单片机(STC89C516)_IT闫的博客-CSDN博客

💻基于HTML5的网页设计及应用:基于HTML5的网页设计及应用_IT闫的博客-CSDN博客​​​​​​

🥏python:python_IT闫的博客-CSDN博客

🐠离散数学:离散数学_IT闫的博客-CSDN博客

欢迎收看,希望对大家有用!

目录

一. 程序题

1. (程序题, 15分)

2. (程序题, 20分)

二. 填空题(共4题,45分)

3. (填空题, 9分)

4. (填空题, 6分)

5. (填空题, 24分)

6. (填空题, 6分)

三. 简答题(共1题,20分)

7. (简答题, 20分)

🎯答案:

第一题:

第二题:

第三题:

第四题:

第五题:

第六题:

 第七题:


一. 程序题

1. (程序题, 15分)

编写函数,接收一个字符串,判断该字符串是否为回文。所谓回文是指从前向后读和从后向前读是一样的。例如:例如: 121是回文, 123454321是回文,abba是回文。(使用切片完成是否是回文的判断条件,切取字符串前一半和后一半比较是否相等) 

输入输出示例如下:

2. (程序题, 20分)

判断用户是否登录成功。

(1)系统里面有多个用户, 用户名和对应的密码信息保存在以下元组和列表里面:

userName = ("zhangsan","lisi","wangwu","zhaoliu","xiaolin","xiaohua")

pwList=['123','456','789','246','abc','abc1234']

用户名和密码的顺序是对应的,例如:zhangsan的密码是123,lisi的密码是456

(2)用户登录(判断用户登录是否成功):

①编写一个函数username_test判断用户是否存在?如果用户存在,返回用户索引;如果输入的用户不存在:重新输入用户名,总共有三次输入用户名的机会,三次输入都失败,退出程序。

②编写一个函数password_test判断用户密码是否正确? 根据存在的用户名返回的索引,用pwList[用户索引]取出该用户的密码与输入的密码对比,如果密码正确,登录成功, 退出程序;否则如果密码不正确:重新输入密码,总共有三次输入密码的机会,三次输入密码失败,退出程序。

③编写一个main函数,在其中创建用户名列表和密码列表,调用username_test函数,判断用户名是否存在,存在的话,返回用户名的索引,调用password_test判断用户输入的密码是否正确。 

二. 填空题(共4题,45分)

3. (填空题, 9分)

def Sum(a,b=3,c=5):

    return sum([a,b,c])

print(Sum(a=3,c=2))

print(Sum(8))

print(Sum(8,2))

4. (填空题, 6分)

编写一个猜数游戏,该游戏会随机产生一个数字,用户可以随意输入一个数进行比较,在比较过程中,会不断提示用户输入的数是大了还是小了,直到用户输入的数等于随机数或者用户猜够5次,程序终止。

请填空完善代码。

import random

import sys

def guess_num(n):

    if n>key:

        return "大了"

    elif n<key:

        return "小了"

    else:

        print("恭喜猜对了")

        sys.exit(0)

key=random.randint(1,100)

_______________

while True:

    if count<=5:

        x = int(input("num="))

        print(_______________)

        count=count+1

    else:

        print(f"很遗憾您5次都没有猜对,生成的数字是{key}")

        break

5. (填空题, 24分)

游戏角色管理。

请填空把代码填写完整。

import sys

print('*' * 40)

print('--------------游戏角色管理--------------')

print('1:查询角色')

print('2:添加角色')

print('3:修改角色')

print('4:删除角色')

print('5:显示所有角色')

print('-1:退出程序')

print('*' * 40)

# 角色列表.

roleList = [{"姓名": "刘备","单位": "蜀国","职务": "董事长兼总经理","武力": 6}]

_______(1)_______

  姓名 = input("请输入要查找角色的姓名: ")

  for role in roleList:

    if 姓名 == role['姓名']:

      print("姓名: %s, 单位: %s, 职务: %s, 武力: %3.1f." % (role['姓名'], role['单位'], role['职务'], role['武力']))

      break

  else:

    print('对不起。没有您要查找的角色!')

_______(2)_______

  姓名 = input('请输入姓名: ')

  for role in roleList:

    if 姓名 == role['姓名']:

      print("您所输入的角色已存在!")

      break

  else:

    单位 = input('请输入单位: ')

    职务 = input('请输入职务: ')

    武力 = float(input('请输入武力: '))

    newRole = {}

    newRole["姓名"] = 姓名

    newRole["单位"] = 单位

    newRole["职务"] = 职务

    newRole["武力"] = 武力

    roleList.append(newRole)

_______(3)_______

  姓名 = input('请输入要修改角色的姓名: ')

  for role in roleList:

    if role['姓名'] == 姓名:

      role['单位'] = input('请输入新的单位: ')

      role['职务'] = input('请输入新的职务: ')

      role['武力'] = float(input('请输入新的武力: '))

      print("修改角色成功!")

      break

  else:

    print('您要修改的角色不存在!')

_______(4)_______

  姓名 = input("请输入要删除角色的姓名: ")

  for role in roleList:

    if role['姓名'] == 姓名:

      roleList.remove(role)

      print("删除角色成功!")

      break

  else:

    print("您要删除的角色不存在!")

_______(5)_______

  for role in roleList:

    print("姓名: %s, 单位: %s, 职务: %s, 武力: %3.1f." % (role['姓名'], role['单位'], role['职务'], role['武力']))

_______(6)_______

  print('退出程序!')

  sys.exit(0)

while True:

  SN = int(input('===请输入操作序号: '))  # 输入操作序号.

  if SN in [1,2,3,4,5,-1]:

    if SN == 1:  # 查询角色.

      queryRole( )

    elif SN == 2:  # 添加新角色

      addRole( )

    elif SN == 3:  # 修改角色.

      modifyRole( )

    elif SN == 4:  # 删除角色.

      deleteRole( )

    elif SN == 5:  # 显示所有角色.

      displayAllRole( )

    else:           # 退出程序.

      exitP( )

  else:

    print("输入错误!请重新输入'-1,1-5'之间的操作序号!")

6. (填空题, 6分)

下面代码

def deco(func):

  def wrapper():

    print(f"before {func.__name__} called.")

    func()

    print(f"after {func.__name__} called.")

  return wrapper

_____(1)_______

def myfunc1():

  print("myfunc1() called.")

____(2)_______

def myfunc2():

  print("myfunc2() called")

myfunc1()

myfunc2()

请完成填空,使代码的执行结果如下:

before myfunc1 called.

myfunc1() called.

after myfunc1 called.

before myfunc2 called.

myfunc2() called

after myfunc2 called.

三. 简答题(共1题,20分)

7. (简答题, 20分)

编写程序产生彩票游戏超级大乐透的投注号码。

1.户输入投注的注数time,显示给用户time组号码。

2.编写函数实现投注号码的生成。

3.请把自己的代码填写到答案框,并截图自己的运行结果。输出结果的第一行

'软工某某班张三的大乐透号码生成器'字符串中的班级和姓名要改写为自己的班级姓名。

备注:

(1)超级大乐透基本投注是指从前区号码(红色球)中任选五个号码,并从后区号码(蓝色球)中任选两个号码的组合进行投注。

其中,前区号码由01—35共三十五个号码组成,后区号码由01—12共十二个号码组成。

(2)显示时,前区号码和后区号码分别按照从小到大的顺序显示

(3) random模块中的random.sample(seq,number)函数可以实现从样本空间seq中随机选择number个数字。

🎯答案:

第一题:

def a(string):l1 = len(string)//2first = string[:l1]second = string[:-l1-1:-1]if first == second:print(f"{string} 是回文")else:print(f"{string} 不是回文")
string1 = input("请输入字符串")
a(string1)

第二题:

def username_test():userName = ("zhangsan", "lisi", "wangwu", "zhaoliu", "xiaolin", "xiaohua")count = 0while count<3:userName1 =input("请输入用户名:")if userName1 in userName:return userName.index(userName1)else:print("用户不存在")count += 1print("用户名输入超过3次")exit(0)
def password_test(user_index):pwList = ['123', '456', '789', '246', 'abc', 'abc1234']count = 0while count < 3:password = input("请输入密码:")if password == pwList[user_index]:print("登录成功")exit(0)else:print("密码不正确")count+=1print("密码输入超过3次")exit(0)
def main():index1 = username_test()password_test(index1)
if __name__ =="__main__":main()

第三题:

(1) 8

(2) 16 

(3) 15

第四题:

(1) count=1;count = 1

(2) guess_num(x);f"{guess_num(x)}"

第五题:

(1)def queryRole():

(2) def addRole():

(3) def modifyRole():

(4) def deleteRole():

(5) def displayAllRole():

(6) def exitP():

第六题:

(1) @deco

(2) @deco

 第七题:

import randomdef Great_lotto(times):Greatnumber = []for i in range(0,times):numbers = []redbubble_list = list(range(1,36))number_red = random.sample(redbubble_list,5)bluebubble_list = list(range(1,13))number_blue = random.sample(bluebubble_list,2)number_red.sort()number_blue.sort()numbers = number_red+number_bluefor n in range(len(numbers)):if numbers[n]<10:numbers[n] = '0'+str(numbers[n])Greatnumber.append(numbers)return Greatnumberprint('软工某某班张三的大乐透号码生成器')time = input('请输入要生成的大乐透号码注数:')Greatnumber = Great_lotto(int(time))for i in range(0,int(time)):print(Greatnumber[i][0],Greatnumber[i][1],Greatnumber[i][2],Greatnumber[i][3],Greatnumber[i][4],Greatnumber[i][5],Greatnumber[i][6])for i in range(0,int(time)):#     for j in range(7):#         if j!=6:#             print(f"{Greatnumber[i][j]}",end=" ")#         else:#             print(f"{Greatnumber[i][j]}")

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

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

相关文章

P8 删除链表指定节点

前言 &#x1f3ac; 个人主页&#xff1a;ChenPi &#x1f43b;推荐专栏1: 《C_ChenPi的博客-CSDN博客》✨✨✨ &#x1f525; 推荐专栏2: 《Linux C应用编程&#xff08;概念类&#xff09;_ChenPi的博客-CSDN博客》✨✨✨ &#x1f4…

【灵魂 |数据结构与算法】 数据结构必备经法(开山篇),一起修炼算法经法!

&#x1f935;‍♂️ 个人主页: AI_magician &#x1f4e1;主页地址&#xff1a; 作者简介&#xff1a;CSDN内容合伙人&#xff0c;全栈领域优质创作者。 &#x1f468;‍&#x1f4bb;景愿&#xff1a;旨在于能和更多的热爱计算机的伙伴一起成长&#xff01;&#xff01;&…

基于Springboot的秒杀系统(有报告)。Javaee项目,springboot项目。

演示视频&#xff1a; 基于Springboot的秒杀系统&#xff08;有报告&#xff09;。Javaee项目&#xff0c;springboot项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三层体系结构&#xf…

【开源】基于Vue和SpringBoot的音乐偏好度推荐系统

项目编号&#xff1a; S 012 &#xff0c;文末获取源码。 \color{red}{项目编号&#xff1a;S012&#xff0c;文末获取源码。} 项目编号&#xff1a;S012&#xff0c;文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、系统设计2.1 功能模块设计2.1.1 音乐档案模块2.1…

easyrecovery2024最新破解版激活密钥

平时很多人都会把自己工作时&#xff0c;或者生活中的数据存储在我们的电脑上&#xff0c;很多时候&#xff0c;由于我们的误操作或者是其它某些问题&#xff0c;很容易就会误删除一些文件数据了&#xff0c;尤其是一些电脑出现故障&#xff0c;总是会导致数据丢失&#xff0c;…

linux 内核regulator

问题 在sys文件系统下没有生成cpu 调频的相关节点。 日志对比 [ 3.588745] cpu cpu4: Looking up cpu-supply from device tree [ 3.588753] cpu cpu4: Failed to get reg [ 3.588791] cpu cpu4: Looking up cpu-supply from device tree [ 3.588808] Failed to i…

智能优化算法应用:基于和声算法无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于和声算法无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于和声算法无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.和声算法4.实验参数设定5.算法结果6.参考文献7.MATLAB…

外贸建站是WP还是CMS?海洋建站教程指南?

外贸建站选WP还是CMS系统&#xff1f;外贸企业网站建站怎么做&#xff1f; 随着全球化的不断发展&#xff0c;越来越多的企业开始拓展海外市场&#xff0c;外贸建站成为了这些企业的必备项目。然而&#xff0c;选择使用哪种建站系统却是一个让人头疼的问题。那么&#xff0c;海…

ElementUI+vue+nodejs培训学校课程预约网站的设计与开发

该系统将采用B/S结构模式&#xff0c;前端部分主要使用html、css、JavaScript等技术&#xff0c;使用Vue和ElementUI框架搭建前端页面&#xff0c;后端部分将使用Nodejs来搭建服务器&#xff0c;并使用MySQL建立后台数据系统&#xff0c;通过axios完成前后端的交互&#xff0c;…

oops-framework框架 之 界面管理(三)

引擎&#xff1a; CocosCreator 3.8.0 环境&#xff1a; Mac Gitee: oops-game-kit 注&#xff1a; 作者dgflash的oops-framework框架QQ群&#xff1a; 628575875 回顾 在上文中主要通过oops-game-kit大家了一个新的模版项目&#xff0c; 主要注意项是resources目录下的两个文…

如何在安卓Termux中使用SFTP文件传输并结合内网穿透工具实现远程传输

文章目录 1. 安装openSSH2. 安装cpolar3. 远程SFTP连接配置4. 远程SFTP访问4. 配置固定远程连接地址 SFTP&#xff08;SSH File Transfer Protocol&#xff09;是一种基于SSH&#xff08;Secure Shell&#xff09;安全协议的文件传输协议。与FTP协议相比&#xff0c;SFTP使用了…

Jmeter的安装配置,性能测试编写

1、jmeter介绍 Apache JMeter是一款纯java编写负载功能测试和性能测试开源工具软件。相比Loadrunner而言&#xff0c;JMeter小巧轻便且免费&#xff0c;逐渐成为了主流的性能测试工具&#xff0c;是每个测试人员都必须要掌握的工具之一。 运行环境为Windows 10系统&#xff0c…

AI创作ChatGPT网站系统源码保姆级搭建部署教程+支持GPT-4图片对话能力

一、AI创作系统 SparkAi创作系统是基于ChatGPT进行开发的Ai智能问答系统和Midjourney绘画系统&#xff0c;支持OpenAI-GPT全模型国内AI全模型。本期针对源码系统整体测试下来非常完美&#xff0c;可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如何搭建部署AI…

数据结构与算法-动态查找表

查找 &#x1f388;3动态查找表&#x1f52d;3.1二叉排序树&#x1f3c6;3.1.1二叉排序树的类定义&#x1f3c6;3.1.2二叉排序树的插入和生成&#x1f3c6;3.1.3二叉树的查找&#x1f3c6;3.1.4二叉排序树的删除 &#x1f52d;3.2平衡二叉树&#x1f3c6;3.2.1平衡二叉树的调整…

基于粒子群算法思想的电动汽车充放电策略-V2G模型-程序代码!

电动汽车充放电对电网的安全稳定带来影响&#xff0c;合理规划电动汽车充放电时间和策略是目前的研究热点。本程序仿真了汽车有序充电和无需充电两种案例&#xff0c;利用电动汽车合理消纳新能源电量&#xff0c;利用粒子群算法思想来求解模型&#xff0c;程序中案例丰富&#…

智能锁-SI522TORC522方案资料

南京中科微这款SI522目前完全PinTOPin兼容的NXP&#xff1a;RC522、CV520 复旦微&#xff1a;FM17520、FM17522/FM17550 瑞盟&#xff1a;MS520、MS522 国民技术:NZ3801、NZ3802 SI522 是应用于13.56MHz 非接触式通信中高集成度读写卡系列芯片中的一员。是NXP 公司针对&quo…

2.1 Linux C 编程

一、Hello World 1、在用户根目录下创建一个C_Program&#xff0c;并在这里面创建3.1文件夹来保存Hellow World程序&#xff1b; 2、安装最新版nvim ①sudo apt-get install ninja-build gettext cmake unzip curl ②sudo apt install lua5.1 ③git clone https://github.…

HarmonyOS 振动效果开发指导

Vibrator 开发概述 振动器模块服务最大化开放硬工最新马达器件能力&#xff0c;通过拓展原生马达服务实现振动与交互融合设计&#xff0c;打造细腻精致的一体化振动体验和差异化体验&#xff0c;提升用户交互效率和易用性、提升用户体验、增强品牌竞争力。 运作机制 Vibrato…

内衣专用洗衣机怎么样?好用又便宜的迷你洗衣机推荐

迷你洗衣机作为一种小型便捷的家用必备洗涤设备&#xff0c;一直都受到越来越多家庭的青睐。一台迷你洗衣机可以帮助我们解决很多麻烦&#xff0c;节省我们的很多时间。对于不少在外工作的人&#xff0c;往往是一个人住&#xff0c;买一台大型的洗衣机或许有点浪费资源&#xf…

JWT令牌的获取与过滤器Filter的使用

JWT&#xff0c;全称JSON Web Token&#xff08;JSON Web令牌&#xff09;&#xff0c;是一个开放标准 (rfc7519)。它定义了一种紧凑的、自包含的方式&#xff0c;以JSON对象的形式安全地在各方之间传输信息。这种信息可以被验证和信任&#xff0c;因为它是通过数字签名实现的。…