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

【Python】牛客网—软件开发-Python专项练习

专栏文章索引:Python

1.(单选)下面哪个是Python中不可变的数据结构?

A.set        B.list        C.tuple        D.dict

        可变数据类型:列表list[ ]、字典dict{ }、集合set{ }(能查询,也可更改)数据发生改变,但内存地址不变

        不可变数据类型:整型int、字符串str' '、元组tuple( )(只能查询,不可更改)当该数据类型的对应变量的值发生了改变,那么它对应的内存地址也会改变

2.(单选)在Python3中。程序语句结果为:

strs = 'abbacabb'
print(strs.strip('ab'))

A.'ab'        B.语法错误        C.'c'        D'ca'

        strip方法匹配两侧所有的不符合条件的字符(括号内指定字符串中的每个字符)

        'ab'表示的是一种集合,这里是指:[ab,ba,aa,bb,aaa,bbb,abb,baa]等;strs两端,只要是包含了上述集合中的任何一个,都删除。

        注意:是匹配两端的字符(串),如果大于一个,是字符的组合集合

下面是几个案例:

strs = 'acaba'
print(strs.strip('a'))# cab
strs = 'acaba'
print(strs.strip('b'))# acaba
strs = 'acaba'
print(strs.strip('abc'))# 
strs = 'acaba'
print(strs.strip('abb'))# c

abb跟ab一样,不要用重复的字符

3.(单选)在python3中,下列程序结果为:

dicts = {'one': 1, 'two': 2, 'three': 3}
print(dicts['one'])
print(dicts['four'])

A.1,[]        B.1,{}        C.1,报错        D.1,None

        在python3中,访问字典的元素主要是依靠字典的key,因此 print(dicts['one']) 的结果为 1;但如果用字典里没有的键访问数据,会报出错误信息

4.(单选)下列程序运行结果为:

a=[1, 2, 3, 4, 5]
sums = sum(map(lambda x: x + 3, a[1::3]))
print(sums)

A.10        B.13        C.15        D.17

我们先来了解一下map函数:

map( )函数

在Python中,map()函数是一个内置的高阶函数,它接收一个函数和一个可迭代对象(比如列表)作为输入,然后将该函数应用于可迭代对象中的每个元素,返回一个新的迭代器(在Python 3中返回的是迭代器对象,而不是列表)。

map()函数的语法如下:        

map(function, iterable, ...)

其中,function是应用于每个元素的函数,iterable是一个或多个可迭代对象。

示例:

# 将列表中的每个字符串转换为大写
words = ['hello', 'world', 'python']
uppercase = map(str.upper, words)
print(list(uppercase))  # 输出:['HELLO', 'WORLD', 'PYTHON']

在上面的示例中,map()函数应用了str.upper函数到列表中的每个元素上。

我们再来了解一下匿名函数

lambda函数

匿名函数,也称为lambda函数,是一种在Python中创建小型、一次性的、可读性较高的函数的方式。它们使用lambda关键字定义,不需要使用def关键字,并且可以在需要函数的地方直接使用。

匿名函数的基本语法如下:

lambda arguments: expression

其中,arguments是函数的参数,expression是函数的返回值。

示例:

# 定义一个匿名函数,计算两个数的和
add = lambda x, y: x + y
print(add(3, 5))  # 输出:8

在上面的示例中,我们定义了一个匿名函数来计算两个数的和

字符串切片

a[1::3] 是Python中用于切片(slice)操作的语法。这表示从索引1开始,以步长3选择列表(或其他可迭代对象)中的元素。

具体解释如下:

  • a: 列表或可迭代对象。
  • [1::3]: 从索引1开始,以步长3选择元素。

例如:

a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
result = a[1::3]
print(result)

输出:

[1, 4, 7]

在这个例子中,a[1::3]选择了从索引1开始,以步长3的方式取得列表中的元素,即索引1、4和7的元素。

sum函数

在Python中,sum()函数是一个内置函数,用于计算可迭代对象(如列表、元组等)中所有元素的总和。sum()函数的语法如下:

sum(iterable, start=0)

其中,iterable是可迭代对象,而start是可选参数,表示求和的初始值,默认为0。

示例:

# 计算列表中所有元素的和
numbers = [1, 2, 3, 4, 5]
total = sum(numbers)
print(total)  # 输出:15# 指定初始值为10进行求和
total_with_start = sum(numbers, start=10)
print(total_with_start)  # 输出:25

在上面的示例中,sum()函数用于计算列表numbers中所有元素的和,并且演示了如何使用可选的start参数指定初始值。

sum(numbers, start=10) 是使用了sum()函数的另一种形式,其中指定了可选参数 start 的值为 10。这表示在计算列表 numbers 中所有元素的总和时,初始值为 10。

具体解释如下:

  • numbers: 列表或可迭代对象,包含要求和的元素。
  • start=10: 可选参数,表示求和的初始值,默认为 0,但在这里被指定为 10。

示例:

numbers = [1, 2, 3, 4, 5]# 使用 sum() 函数,初始值为 0(默认)
total_default_start = sum(numbers)
print(total_default_start)  # 输出:15# 使用 sum() 函数,初始值为 10
total_with_start = sum(numbers, start=10)
print(total_with_start)  # 输出:25

在这个例子中,第一个 sum() 调用没有指定初始值,因此默认为 0,而第二个调用指定了初始值为 10。

5.(单选)下面这段程序的功能是什么?

def f(a, b):if b == 0:return aelse:return f(b, a%b)a, b = input(“Enter two natural numbers: ”)
print f(a, b)

A.求AB最大公约数        B.求AB最小公倍数        C.求A%B        D.求A/B

a % b 是求余数

辗转相除法,又称欧几里得算法,以除数和余数反复做除法运算,当余数为 0 时,取当前算式除数为最大公约数

6.(单选)对于下面的python3函数,如果输入的参数n非常大,函数的返回值会趋近于以下哪一个值(选项中的值用Python表达式来表示)

import random 
def foo(n):   random.seed()c1 = 0c2 = 0for i in range(n):x = random.random()y = random.random()r1 = x * x + y * yr2 = (1 - x) * (1 - x) + (1 - y) * (1 - y)if r1 <= 1 and r2 <= 1:c1 += 1else:c2 += 1return   c1 / c2

8.执行以下程序,输出结果为()

def outer(fn):print('outer')def inner():print('inner')return fnreturn inner@outer
def fun():print('fun')

A.outer        B.inner        C.fun        D.因为没有调用任何函数,所以没有输出结果

装饰器的一个关键特性是,它在被装饰函数定义后被立即执行,因此运行装饰函数outer,输出结果为outer,内部函数inner没有调用,不会输出任何结果,被装饰函数同样也不会运行。

参考文章:装饰器函数

def outer(fn):print('outer')def inner():print('inner')return fnreturn inner@outer
def fun():print('fun')fun()"""
outer
inner
"""

9.在python3中关键字 pass 的使用,则:

for i in range(5):if i == 2:passprint(i)

A.1,2,3,4,5        B.0,1,2,3,4        C.0,1,3,4        D.0,1,2,3,4,5

在Python3中,pass是空语句,是为了保持程序结构的完整性,不做任何事情,一般用做占位语句

因此程序打印的数字为 0,1,2,3,4,注意range(5) 生成的列表是从0开始到4,不包含5

10.(多选)Python中函数是对象,下列描述正确的有?

A.函数可以赋值给一个变量        B.函数可以作为元素添加到集合对象中        

C.函数可以作为参数值传递给其它函数        D.函数可以当做函数的返回值

在 Python 中万物皆为对象,函数也不例外,函数作为对象可以赋值给一个变量、可以作为元素添加到集合对象中、可作为参数值传递给其它函数,还可以当做函数的返回值,这些特性就是第一类对象所特有的。

详情请参考:

https://www.cnblogs.com/smallmars/p/6936871.html


相关文章:

【Python】牛客网—软件开发-Python专项练习

专栏文章索引&#xff1a;Python 1.&#xff08;单选&#xff09;下面哪个是Python中不可变的数据结构&#xff1f; A.set B.list C.tuple D.dict 可变数据类型&#xff1a;列表list[ ]、字典dict{ }、集合set{ }(能查询&#xff0c;也可更改)数据发生改…...

HBase分布式数据库的原理和架构

一、HBase简介 HBase是是一个高性能、高可靠性、面向列的分布式数据库&#xff0c;它是为了在廉价的硬件集群上存储大规模数据而设计的。HBase利用Hadoop HDFS作为其文件存储系统&#xff0c;且Hbase是基于Zookeeper的。 二、HBase架构 *图片引用 Hbase采用Master/Slave架构…...

c#类属性与字段例说说

在C#中&#xff0c;类属性&#xff08;Properties&#xff09;和字段&#xff08;Fields&#xff09;是两种用于存储和访问数据的机制。 属性是一种特殊的方法&#xff0c;通过使用get和set访问器来定义&#xff0c;用于读取和写入类的私有字段。属性可以提供对字段的封装&…...

Linux Centos系统 磁盘分区和文件系统管理 (深入理解)

CSDN 成就一亿技术人&#xff01; 作者主页&#xff1a;点击&#xff01; Linux专栏&#xff1a;点击&#xff01; CSDN 成就一亿技术人&#xff01; 前言———— 磁盘 在Linux系统中&#xff0c;磁盘是一种用于存储数据的物理设备&#xff0c;可以是传统的硬盘驱动器&am…...

华为配置ISP选路实现报文按运营商转发

CLI举例&#xff1a;配置ISP选路实现报文按运营商转发 介绍通过配置ISP选路实现报文按运营商转发的配置举例。 组网需求 如图1所示&#xff0c;FW作为安全网关部署在网络出口&#xff0c;企业分别从ISP1和ISP2租用一条链路。 企业希望访问Server 1的报文从ISP1链路转发&#…...

软件测试APP完整测试作业流程(附流程图),公司级软件测试流程化办公

目录 1. 概述 2. 软件测试流程 3. 软件测试周期人员活动图 4. 总结 1. 概述 1.1 目的 有效的保证软件质量&#xff1b; 有效的制定不同测试类型&#xff08;软件系统测试、音频主观性测试、Field Trial、专项测试、自动化测试、性 能测试、用户体验测试&#xff09;的软件…...

搭建交换机模拟环境及SSH连接,华为NSP软件入门使用教程

搭建交换机模拟环境及SSH连接&#xff0c;华为NSP软件入门使用教程 如果你是通过搜索搜到了这篇文章&#xff0c;那么一定是工作或者学习中需要用交换机&#xff0c;但是又没物理机测试学习&#xff0c;所以需要搭建本地的虚拟环境学习。 这篇文章是我进行交换机命令入门学习写…...

mineadmin 快速安装部署(docker环境)

前提条件&#xff1a;已安装docker 一、下载dnmp环境包 github地址&#xff1a;https://github.com/tomorrow-sky/dnmp gitee地址&#xff1a; https://gitee.com/chenjianchuan/dnmp 二、看一下dnmp包目录结构 三、打开docker-compose.yml 文件&#xff0c;将不需要…...

【力扣刷题练习】93. 复原 IP 地址

题目描述&#xff1a; 有效 IP 地址 正好由四个整数&#xff08;每个整数位于 0 到 255 之间组成&#xff0c;且不能含有前导 0&#xff09;&#xff0c;整数之间用 ‘.’ 分隔。 例如&#xff1a;“0.1.2.201” 和 “192.168.1.1” 是 有效 IP 地址&#xff0c;但是 “0.011…...

linux查看文件内容cat,less,vi,vim

学习记录 目录 catlessvi vim cat 输出 FILE 文件的全部内容 $ cat [OPTION] FILE示例 输出 file.txt 的全部内容 $ cat file.txt查看 file1.txt 与 file2.txt 连接后的内容 $ cat file1.txt file2.txt为什么名字叫 cat&#xff1f; 当然和猫咪没有关系。 cat 这里是 co…...

【恒源智享云】conda虚拟环境的操作指令

conda虚拟环境的操作指令 由于虚拟环境经常会用到&#xff0c;但是我总忘记&#xff0c;所以写个博客&#xff0c;留作自用。 在恒源智享云上&#xff0c;可以直接在终端界面输入指令&#xff0c;例如&#xff1a; 查看已经存在的虚拟环境列表 conda env list查看当前虚拟…...

Flask python 开发篇:项目布局

一、背景简介 Flask应用程序可以像单个文件一样简单。就像上一篇简单实现一个接口一样&#xff0c;所有的东西都在一个python文件内&#xff1b; 然而&#xff0c;当项目越来越大的时候&#xff0c;把所有代码放在单个文件中就有点不堪重负了。 Python 项目使用 包 来管理代码…...

docker 部署prometheus+grafana

首先进行部署docker 配置阿里云依赖&#xff1a; curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo # 配置centos 7的镜像源 yum install -y yum-utils device-mapper-persistent-data lvm2 # 安装一些后期或需要的的一下依…...

RNN实战

本主要是利用RNN做多分类任务&#xff0c;在熟悉RNN训练的过程中&#xff0c;我们可以理解 1&#xff09;超参数 batch_size和pad_size对训练过程的影响。 2&#xff09;文本处理过程中是如何将文本的文字表示转化为向量表示 3&#xff09;RNN梯度消失和序列长度的关系 4&#…...

从GPT入门,到R语言基础与作图、回归模型分析、混合效应模型、多元统计分析及结构方程模型、Meta分析、随机森林模型及贝叶斯回归分析综合应用等专题及实战案例

目录 专题一 GPT及大语言模型简介及使用入门 专题二 GPT与R语言基础与作图&#xff08;ggplot2&#xff09; 专题三 GPT与R语言回归模型&#xff08;lm&glm&#xff09; 专题四 GPT与混合效应模型&#xff08;lmm&glmm&#xff09; 专题五 GPT与多元统计分析&…...

【Android】数据安全(一) —— Sqlite加密

目录 SQLCipherSQLiteCrypt其它 SQLCipher SQLCipher 是 SQLite 数据库的的开源扩展&#xff0c;使用了 256 位 AES 加密&#xff0c;支持跨平台、零配置、数据100%加密、加密开销低至 5 -15%、占用空间小、性能出色等优点&#xff0c;因此非常适合保护嵌入式应用程序数据库&a…...

云原生周刊:Helm Charts 深入探究 | 2024.3.11

开源项目推荐 Glasskube Glasskube 提供了一个用于 Kubernetes 的缺失的包管理器。它具有图形用户界面(GUI)和命令行界面(CLI)。Glasskube 包是具备依赖感知、GitOps 准备和可以通过中央公共包仓库自动更新的特性。 imgpkg imgpkg&#xff08;发音为&#xff1a;"imag…...

【C++初阶】第六站 : 模板初阶

前言&#xff1a; 本章知识点&#xff1a;泛型编程、函数模板、类模板 专栏&#xff1a; C初阶 目录 泛型编程 函数模板 1.函数模板概念 2.函数模板格式 3.函数模板的原理 4.函数模板的实例化 5.模板参数的匹配原则 类模板 类模板的定义格式 类模板的实例化 泛型编程 如何实现一…...

训练保存模型checkpoint时报错SyntaxError: invalid syntax

在使用pytorch训练保存checkpoint时&#xff0c;出现如下报错&#xff1a; rootautodl-container-745411b452-c5cebfed:~/kvasir-seg-main# python train_transunet.py --loss_function"IoULoss" --training_augmentation0File "train_transunet.py", lin…...

虚拟机中安装Win98

文章目录 一、下载Win98二、制作可启动光盘三、VMware中安装Win98四、Qemu中安装Win981. Qemu的安装2. 安装Win98 Win98是微软于1998年发布的16位与32位混合的操作系统&#xff0c;也是一代经典的操作系统&#xff0c;期间出现了不少经典的软件与游戏&#xff0c;还是值得怀念的…...

日语AI面试高效通关秘籍:专业解读与青柚面试智能助攻

在如今就业市场竞争日益激烈的背景下&#xff0c;越来越多的求职者将目光投向了日本及中日双语岗位。但是&#xff0c;一场日语面试往往让许多人感到步履维艰。你是否也曾因为面试官抛出的“刁钻问题”而心生畏惧&#xff1f;面对生疏的日语交流环境&#xff0c;即便提前恶补了…...

UE5 学习系列(三)创建和移动物体

这篇博客是该系列的第三篇&#xff0c;是在之前两篇博客的基础上展开&#xff0c;主要介绍如何在操作界面中创建和拖动物体&#xff0c;这篇博客跟随的视频链接如下&#xff1a; B 站视频&#xff1a;s03-创建和移动物体 如果你不打算开之前的博客并且对UE5 比较熟的话按照以…...

【快手拥抱开源】通过快手团队开源的 KwaiCoder-AutoThink-preview 解锁大语言模型的潜力

引言&#xff1a; 在人工智能快速发展的浪潮中&#xff0c;快手Kwaipilot团队推出的 KwaiCoder-AutoThink-preview 具有里程碑意义——这是首个公开的AutoThink大语言模型&#xff08;LLM&#xff09;。该模型代表着该领域的重大突破&#xff0c;通过独特方式融合思考与非思考…...

el-switch文字内置

el-switch文字内置 效果 vue <div style"color:#ffffff;font-size:14px;float:left;margin-bottom:5px;margin-right:5px;">自动加载</div> <el-switch v-model"value" active-color"#3E99FB" inactive-color"#DCDFE6"…...

spring:实例工厂方法获取bean

spring处理使用静态工厂方法获取bean实例&#xff0c;也可以通过实例工厂方法获取bean实例。 实例工厂方法步骤如下&#xff1a; 定义实例工厂类&#xff08;Java代码&#xff09;&#xff0c;定义实例工厂&#xff08;xml&#xff09;&#xff0c;定义调用实例工厂&#xff…...

什么是Ansible Jinja2

理解 Ansible Jinja2 模板 Ansible 是一款功能强大的开源自动化工具&#xff0c;可让您无缝地管理和配置系统。Ansible 的一大亮点是它使用 Jinja2 模板&#xff0c;允许您根据变量数据动态生成文件、配置设置和脚本。本文将向您介绍 Ansible 中的 Jinja2 模板&#xff0c;并通…...

2025年渗透测试面试题总结-腾讯[实习]科恩实验室-安全工程师(题目+回答)

安全领域各种资源&#xff0c;学习文档&#xff0c;以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具&#xff0c;欢迎关注。 目录 腾讯[实习]科恩实验室-安全工程师 一、网络与协议 1. TCP三次握手 2. SYN扫描原理 3. HTTPS证书机制 二…...

RSS 2025|从说明书学习复杂机器人操作任务:NUS邵林团队提出全新机器人装配技能学习框架Manual2Skill

视觉语言模型&#xff08;Vision-Language Models, VLMs&#xff09;&#xff0c;为真实环境中的机器人操作任务提供了极具潜力的解决方案。 尽管 VLMs 取得了显著进展&#xff0c;机器人仍难以胜任复杂的长时程任务&#xff08;如家具装配&#xff09;&#xff0c;主要受限于人…...

苹果AI眼镜:从“工具”到“社交姿态”的范式革命——重新定义AI交互入口的未来机会

在2025年的AI硬件浪潮中,苹果AI眼镜(Apple Glasses)正在引发一场关于“人机交互形态”的深度思考。它并非简单地替代AirPods或Apple Watch,而是开辟了一个全新的、日常可接受的AI入口。其核心价值不在于功能的堆叠,而在于如何通过形态设计打破社交壁垒,成为用户“全天佩戴…...

DeepSeek源码深度解析 × 华为仓颉语言编程精粹——从MoE架构到全场景开发生态

前言 在人工智能技术飞速发展的今天&#xff0c;深度学习与大模型技术已成为推动行业变革的核心驱动力&#xff0c;而高效、灵活的开发工具与编程语言则为技术创新提供了重要支撑。本书以两大前沿技术领域为核心&#xff0c;系统性地呈现了两部深度技术著作的精华&#xff1a;…...