当前位置: 首页 > news >正文

Python期末题目 | 期末练习题【概念题+代码】

一、前言

Python 是一门功能强大且易于学习的编程语言,在高校中被广泛用作教学语言。Python 的期末考试通常会包含基础知识和编程实践,以考察学生的理解与应用能力。本文整理了一套 Python 期末练习题,包括选择题、填空题、判断题和代码题。希望这套题目能帮助大家在期末考试中更好地复习 Python 的核心概念。

二、选择题(共5题,每题2分,共10分)
  1. 选择题 1:以下哪种数据类型是 Python 中的不可变类型?
    A. 列表(List)
    B. 字典(Dictionary)
    C. 集合(Set)
    D. 元组(Tuple)

    答案:D
    解析:元组是不可变的,其他数据类型(列表、字典、集合)在 Python 中都是可变的。

  2. 选择题 2:在 Python 中,print(5 // 2) 的输出结果是:
    A. 2.5
    B. 2
    C. 3
    D. 0

    答案:B
    解析// 表示整数除法(地板除),结果取商的整数部分。

  3. 选择题 3:以下选项中,Python 中正确的文件读取模式是:
    A. 'r+'
    B. 'ra'
    C. 'rw'
    D. 'wr'

    答案:A
    解析'r+' 表示可读写模式。'rw''wr' 都是错误的模式标识。

  4. 选择题 4:在 Python 中,lambda 表达式的作用是:
    A. 创建多行函数
    B. 创建匿名函数
    C. 声明变量
    D. 创建类

    答案:B
    解析lambda 表达式用于创建匿名函数。

  5. 选择题 5:Python 中,range(2, 10, 2) 生成的序列是:
    A. [2, 3, 4, 5, 6, 7, 8, 9]
    B. [2, 4, 6, 8]
    C. [2, 4, 6, 8, 10]
    D. [3, 5, 7, 9]

    答案:B
    解析range 函数生成从 2 开始,间隔 2,且小于 10 的一系列数值。

三、填空题(共5题,每题2分,共10分)
  1. 填空题 1:在 Python 中,列表可以通过方法 __________ 来向列表末尾添加元素。
    答案append
    解析append 方法用于在列表末尾添加元素。

  2. 填空题 2:在 Python 中,len() 函数用于获取 __________ 的长度。
    答案:序列(或字符串、列表、元组)
    解析len() 函数用于计算序列的长度。

  3. 填空题 3:Python 中,用于异常处理的关键字是 __________
    答案try
    解析try 语句用于捕获和处理异常,常与 except 搭配使用。

  4. 填空题 4:Python 中 __________ 函数可以返回字典中的所有键。
    答案keys
    解析keys() 方法返回字典的所有键。

  5. 填空题 5:在 Python 中,可以使用 __________ 来检查某个值是否在列表中。
    答案in
    解析in 关键字用于检查元素是否在列表或其他容器中。

四、判断题(共5题,每题2分,共10分)
  1. 判断题 1:在 Python 中,[1, 2] + [3, 4] 的结果是 [1, 2, 3, 4]。(是/否)
    答案:是
    解析:列表的 + 操作符表示将两个列表连接起来。

  2. 判断题 2:Python 中,所有异常都必须被捕获和处理,否则程序会报错。(是/否)
    答案:否
    解析:并非所有异常都必须被处理,程序员可以根据需求选择捕获特定异常。

  3. 判断题 3:Python 中的 print 函数默认情况下在输出内容后自动添加换行符。(是/否)
    答案:是
    解析print 函数默认在结尾添加换行符 \n

  4. 判断题 4:Python 中的字符串是可变的。(是/否)
    答案:否
    解析:字符串在 Python 中是不可变的(immutable)。

  5. 判断题 5:在 Python 中,所有变量在使用前都必须声明类型。(是/否)
    答案:否
    解析:Python 是动态类型语言,变量无需声明类型。

五、代码题(共3题,每题20分,共60分)
  1. 代码题 1:计算列表中的最大值和最小值
    题目要求:编写一个函数 find_max_min,接收一个列表,返回列表中的最大值和最小值。
    代码示例

    def find_max_min(lst):return max(lst), min(lst)# 测试
    nums = [3, 5, 7, 2, 8]
    max_val, min_val = find_max_min(nums)
    print(f"最大值: {max_val}, 最小值: {min_val}")  # 输出: 最大值: 8, 最小值: 2
    

    解析:使用内置函数 maxmin 快速找到列表中的最大值和最小值。

  2. 代码题 2:判断一个字符串是否为回文
    题目要求:编写一个函数 is_palindrome,判断一个字符串是否为回文。回文是指正着读和反着读都一样的字符串。
    代码示例

    def is_palindrome(s):return s == s[::-1]# 测试
    print(is_palindrome("madam"))  # 输出: True
    print(is_palindrome("hello"))  # 输出: False
    

    解析:通过切片操作 [::-1] 反转字符串,并检查是否与原字符串相等。

  3. 代码题 3:计算一个整数的阶乘
    题目要求:编写一个函数 factorial,接收一个整数并返回其阶乘。
    代码示例

    def factorial(n):if n == 0 or n == 1:return 1else:return n * factorial(n - 1)# 测试
    print(factorial(5))  # 输出: 120
    print(factorial(0))  # 输出: 1
    

    解析:通过递归实现阶乘计算,factorial 函数乘以 n - 1 直到到达基线条件 n == 0n == 1

相关文章:

Python期末题目 | 期末练习题【概念题+代码】

一、前言 Python 是一门功能强大且易于学习的编程语言,在高校中被广泛用作教学语言。Python 的期末考试通常会包含基础知识和编程实践,以考察学生的理解与应用能力。本文整理了一套 Python 期末练习题,包括选择题、填空题、判断题和代码题。…...

OpenCV基本操作(python开发)——(6)视频基本处理

OpenCV——视频基本处理 一、读取摄像头 import numpy as np import cv2cap cv2.VideoCapture(0) # 实例化VideoCapture对象, 0表示第一个摄像头 while cap.isOpened():ret, frame cap.read() # 捕获帧cv2.imshow("frame", frame)c cv2.waitKey(1) # 等待1毫…...

详解Java之Spring MVC篇一

目录 Spring MVC 官方介绍 MVC RequestMapping 传递参数 无参数 单个参数 针对String类型 针对Integer类型 针对int类型 针对自定义类型 多个参数 参数重命名 参数强制一致 参数不强制一致 传递数组 ​编辑传递List ​编辑 传递JSON ​编辑 从路径中获取参…...

ubuntu20.04上使用 Verdaccio 搭建 npm 私有仓库

安装nvm 首先安装必要的工具: apt update apt install curl下载并执行nvm安装脚本: curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash添加环境变量(如果安装脚本没有自动添加)。编辑 ~/.bash…...

Python实现办公自动化的数据可视化与报表生成

在 Python 中,可以利用多个库来实现办公自动化中的数据可视化与报表生成。以下是具体的方法: 一、数据可视化 使用 matplotlib 库 matplotlib 是一个强大的 Python 绘图库,可以创建各种类型的静态、动态和交互式图表。示例代码:i…...

前端知识串联笔记(更新中...)

1.MVVM MVVM 是指 Model - View - ViewModel,Model 是数据与业务逻辑,View 是视图,ViewModel 用于连接 View 和 Model Model ---> View:将数据转化成所看到的页面,实现的方式:Data Bindings -- 数据绑定…...

PostgreSQL根据字符串的长度排序

PostgreSQL根据字符串的长度排序 在 PostgreSQL 中,你可以使用 LENGTH 函数来获取字符串的长度,并根据这个长度进行排序。LENGTH 函数会返回字符串的字符数。 以下是一个基本的 SQL 查询示例,它根据 some_column 字符串列的长度对表中的行进…...

计算机网络:网络层 —— IP数据报的发送和转发过程

文章目录 IP数据报的发送和转发过程主机发送IP数据报路由器转发IP数据报示例 IP数据报的发送和转发过程 IP 数据报的发送和转发过程包含以下两个过程: 主机发送IP数据报路由器转发IP数据报 直接交付:源主机与目的主机在同一网络中间接交付:…...

【算力基础】GPU算力计算和其他相关基础(TFLOPS/TOPS/FP32/INT8...)

文章目录 :one: 算力的常见指标:two: 算力计算:three: 常用链接 🚀 本文主要是聚焦于深度学习领域的 GPU的算力估计,其他类型的硬件设备如CPU可以类比参考。 1️⃣ 算力的常见指标 算力衡量主要与运算速度和精度这两个指标有关。 🌔速度指…...

UI自动化测试(app端)4.0

✨博客主页: https://blog.csdn.net/m0_63815035?typeblog 💗《博客内容》:.NET、Java.测试开发、Python、Android、Go、Node、Android前端小程序等相关领域知识 📢博客专栏: https://blog.csdn.net/m0_63815035/cat…...

C#与C++交互开发系列(十):数组传递的几种形式

前言 在C#和C的交互开发中,数组传递是一个非常常见且实用的场景。数组可以作为方法的参数,也可以作为响应结果返回。在本篇博客中,我们将探讨几种常见的数组传递方式,展示如何在C#与C之间进行有效的数据交换。我们将主要介绍以下…...

【C++复习】第一弹-基础性语法

前言 学习了C语法这么久了,我其实觉得,我们学习一门语言应该更加注重使用性,对于语法的细节可以通过具体的项目去重新造轮子的时候再去抠细节,也就是说你得学会先走,在去想我们如何走的,身体的哪些肌肉在发…...

软考高级备考记录

一 报考条件和报名流程 报考条件 该考试具有水平考试性质,报考任何级别不需要学历、资历条件,只要达到相应的专业技术水平就可以报考相应的级别 报名流程 软考报名官网:中国计算机技术职业资格网 官网上有 报名时间,考试…...

图为大模型一体机新探索,赋能智能家居行业

在21世纪的今天,科技的飞速进步正以前所未有的速度重塑着我们的生活方式。从智能手机到物联网,从大数据到人工智能,每一项技术创新都在为人类带来前所未有的便利与效率。其中,图为AI大模型一体机作为人工智能领域的最新成果&#…...

精氨酸/赖氨酸多肽(芋螺肽)

产品简介: 芋螺肽,源自瑞士尖端科技,是一种模拟芋螺毒素的生物活性肽。它以其独特的分子结构和高选择性作用于电压门控钠离子通道(特别是Nav1.4),为您提供安全、自然且不僵硬的回春效果。芋螺肽&#xff0…...

C++音视频04:音视频编码、生成图片

视频编码 #include <libavutil/log.h> #include <libavutil/opt.h> #include <libavcodec/avcodec.h>static int encode(AVCodecContext *ctx, AVFrame *frame, AVPacket *pkt, FILE *out) {int ret -1;ret avcodec_send_frame(ctx, frame);if (ret < …...

ImageSharp报错

错误信息 System.MissingMethodException: Method not found: System.Span1<SixLabors.ImageSharp.PixelFormats.Rgba32> SixLabors.ImageSharp.Memory.Buffer2D1.GetRowSpan(Int32).需要升级项目 原来仅升级了SixLabors.ImageSharp没有升级drawing&#xff0c;都升级到…...

Android中常用adb命令

目录 1.adb连接安卓模拟器 2.adb列出所有已经连接的设备 3.adb显示设备的日志信息 4.adb 电脑文件推送到安卓模拟器中 5.adb 手机传送文件到电脑 6.adb获取安卓应用的包名和Activity名 附录 1--命令 1&#xff09;adb devices 2&#xff09;adb install 路径> 3&#xff09;…...

PostgreSQL的奥秘:全面解读JSONB——非结构化数据支持的深入探索

引言 PostgreSQL的JSONB数据类型非常灵活&#xff0c;提供了一套操作符来操作JSON数据。本指南将引导您创建一个包含JSONB数据的表&#xff0c;演示各种JSONB操作符&#xff0c;并讨论如何使用倒排索引和部分索引来优化性能。 理解PostgreSQL中的JSONB JSONB&#xff0c;即JS…...

tornado,flaskd这两个框架主要是干什么的

Tornado是一个Python的Web框架&#xff0c;主要用于构建高性能的异步Web应用程序。它基于非阻塞的网络I/O模型&#xff0c;可以处理大量并发连接&#xff0c;适用于需要处理实时性要求较高的应用场景&#xff0c;如实时聊天、实时数据推送等。 Flask是另一个Python的Web框架&a…...

树莓派超全系列教程文档--(62)使用rpicam-app通过网络流式传输视频

使用rpicam-app通过网络流式传输视频 使用 rpicam-app 通过网络流式传输视频UDPTCPRTSPlibavGStreamerRTPlibcamerasrc GStreamer 元素 文章来源&#xff1a; http://raspberry.dns8844.cn/documentation 原文网址 使用 rpicam-app 通过网络流式传输视频 本节介绍来自 rpica…...

盘古信息PCB行业解决方案:以全域场景重构,激活智造新未来

一、破局&#xff1a;PCB行业的时代之问 在数字经济蓬勃发展的浪潮中&#xff0c;PCB&#xff08;印制电路板&#xff09;作为 “电子产品之母”&#xff0c;其重要性愈发凸显。随着 5G、人工智能等新兴技术的加速渗透&#xff0c;PCB行业面临着前所未有的挑战与机遇。产品迭代…...

理解 MCP 工作流:使用 Ollama 和 LangChain 构建本地 MCP 客户端

&#x1f31f; 什么是 MCP&#xff1f; 模型控制协议 (MCP) 是一种创新的协议&#xff0c;旨在无缝连接 AI 模型与应用程序。 MCP 是一个开源协议&#xff0c;它标准化了我们的 LLM 应用程序连接所需工具和数据源并与之协作的方式。 可以把它想象成你的 AI 模型 和想要使用它…...

生成 Git SSH 证书

&#x1f511; 1. ​​生成 SSH 密钥对​​ 在终端&#xff08;Windows 使用 Git Bash&#xff0c;Mac/Linux 使用 Terminal&#xff09;执行命令&#xff1a; ssh-keygen -t rsa -b 4096 -C "your_emailexample.com" ​​参数说明​​&#xff1a; -t rsa&#x…...

Java 加密常用的各种算法及其选择

在数字化时代&#xff0c;数据安全至关重要&#xff0c;Java 作为广泛应用的编程语言&#xff0c;提供了丰富的加密算法来保障数据的保密性、完整性和真实性。了解这些常用加密算法及其适用场景&#xff0c;有助于开发者在不同的业务需求中做出正确的选择。​ 一、对称加密算法…...

令牌桶 滑动窗口->限流 分布式信号量->限并发的原理 lua脚本分析介绍

文章目录 前言限流限制并发的实际理解限流令牌桶代码实现结果分析令牌桶lua的模拟实现原理总结&#xff1a; 滑动窗口代码实现结果分析lua脚本原理解析 限并发分布式信号量代码实现结果分析lua脚本实现原理 双注解去实现限流 并发结果分析&#xff1a; 实际业务去理解体会统一注…...

06 Deep learning神经网络编程基础 激活函数 --吴恩达

深度学习激活函数详解 一、核心作用 引入非线性:使神经网络可学习复杂模式控制输出范围:如Sigmoid将输出限制在(0,1)梯度传递:影响反向传播的稳定性二、常见类型及数学表达 Sigmoid σ ( x ) = 1 1 +...

Python基于历史模拟方法实现投资组合风险管理的VaR与ES模型项目实战

说明&#xff1a;这是一个机器学习实战项目&#xff08;附带数据代码文档&#xff09;&#xff0c;如需数据代码文档可以直接到文章最后关注获取。 1.项目背景 在金融市场日益复杂和波动加剧的背景下&#xff0c;风险管理成为金融机构和个人投资者关注的核心议题之一。VaR&…...

并发编程 - go版

1.并发编程基础概念 进程和线程 A. 进程是程序在操作系统中的一次执行过程&#xff0c;系统进行资源分配和调度的一个独立单位。B. 线程是进程的一个执行实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。C.一个进程可以创建和撤销多个线程;同一个进程中…...

6️⃣Go 语言中的哈希、加密与序列化:通往区块链世界的钥匙

Go 语言中的哈希、加密与序列化:通往区块链世界的钥匙 一、前言:离区块链还有多远? 区块链听起来可能遥不可及,似乎是只有密码学专家和资深工程师才能涉足的领域。但事实上,构建一个区块链的核心并不复杂,尤其当你已经掌握了一门系统编程语言,比如 Go。 要真正理解区…...