牛客网专项练习30天Pytnon篇第21天

简介: 牛客网专项练习30天Pytnon篇第21天

1.在Python3中,下列程序运行结果为:(B)

dicts = {}
dicts[(1, 2)] = {3, (4, 5)}
print(dicts)

A.报错


B.{(1, 2): {(4, 5), 3}}


C.{(1, 2): [(4, 5), 3]}


D.{(1, 2): [3, 4, 5]}


解析:


      根据题意字典添加元素方法为 dict[key] = value ,得到key 是:(1,2)  ,value是:{3, (4, 5)},由于{3, (4, 5)},它是一个集合,集合内部会自动排序,元组在集合里面会往前放,所以变成:{(4, 5), 3}。所以最后的结果 key:value  = (1,2):{(4,5),3}。


2.在Python3中,程序运行结果为:(C)

tmp = dict.fromkeys(['a', 'b'], 4)
print(tmp)

A{('a', 'b'): 4}


B{'a': 4}


C{'a': 4, 'b': 4}


D{ 'b': 4}


解析:


      本题目主要考察字典的 fromkeys 这个函数的使用,fromkeys(seq,value),以seq做为键,这里键为列表,是一个元素,value为值,字典是以键值对的形式呈现出来的。所以,这个结果就为:{'a':4,'b':4}。


3.在Python3中,程序运行结果为:(C)

kvps = { '1' : 1, '2' : 2 }
theCopy = kvps.copy()
kvps['1'] = 5
sum = kvps['1'] + theCopy['1']
Print(sum)

A.1


B.2


C.6


D.10


解析:


      浅拷贝(copy):拷贝父对象,不会拷贝对象的内部的子对象;深拷贝(deepcopy): copy 模块的 deepcopy 方法,完全拷贝了父对象及其子对象。两者的区别在于对‘对象的拷贝’,对数值则拷贝后完全是独立的。因此改变dict中普通数值,浅拷贝与深拷贝结果相同。另一个copy对象并不会跟着改变。


4.以下代码输出为:(D)

list1 = {'1':1,'2':2}
list2 = list1
list1['1'] = 5
sum = list1['1'] + list2['1']
print(sum)

A.1


B.2


C.7


D.10


解析:


      根据可变数据类型特性:list2 = list1赋值引用,list2 和 list1 都指向同一个对象。list1 和 list2 指向的是同一块内存空间;list1['1']=5 原内存空间中'1'的value值被改变,原内存空间存储的数据变为:{'1': 5, '2': 2};因此 sum = list1['1']+list2['1']=5+5=10。


5.以下程序输出为:(A)

info = {'name': '小新', 'id': 100}
print(info.get('age'))
info['age'] = 18
print(info.get('age'))

A.None 18


B.None None


C.编译错误


D.运行错误


解析:


 本题利用字典的dict.get(key[, value])方法查找 key(键),key( 字典中要查找的键),value(可选,如果指定键的值不存在时,返回该默认值)。返回指定键的值,如果键不在字典中返回默认值 None 或者设置的默认值。dict.get(key) 方法在 key(键)不在字典中时,可以返回默认值 None 或者设置的默认值。dict[key] 在 key(键)不在字典中时,会触发 KeyError 异常。


相关文章
|
SQL 存储 弹性计算
阿里云EMR 2.0:重新定义新一代开源大数据平台
本次分享主要介绍了阿里云E-MapReduce的开发历程,EMR 2.0的新特性、产品架构,以及EMR 2.0在平台体验、数据开发、资源形态及分析场景等方面的全面突破与创新,重新定义新一代开源大数据平台。
3183 0
阿里云EMR 2.0:重新定义新一代开源大数据平台
|
监控 数据可视化 安全
Linux——怎样使用SSH服务实现远程UI界面本地显示
需求场景 最近几天需要实现软件的远程监控,但是实际场景又不能使用向日葵、VNC、AnyDesk、以及其他的监视软件,并且软件的整体设计也没有这块的数据上行设计。
880 0
|
开发框架 Java 数据库
java----包的命名规范
对包的解释与命名规则
10303 0
java----包的命名规范
|
数据挖掘 数据格式
跟着Cell学作图 | 6.时间序列分析(Mfuzz包)
这篇2020年发表在cell上关于新冠的组学文章里面有大量的生信内容。今天带大家复现其中的一个Supplemental Figure:时间序列分析图。
1081 0
跟着Cell学作图 | 6.时间序列分析(Mfuzz包)
|
5月前
|
存储 人工智能 边缘计算
当 AI 进入「算力密集时代」:你的服务器能跑通大模型吗?
本文深入探讨AI服务器在技术落地中的核心瓶颈问题,结合实战经验解析从模型训练到端侧部署的算力优化策略。内容涵盖三大典型场景的算力需求差异、GPU服务器选型的五大反直觉真相、实战优化方法(如混合精度训练与硬件资源监控),以及边缘AI部署挑战和解决方案。同时提供算力弹性扩展策略、模型生命周期管理及合规性建议,帮助读者构建可持续发展的算力体系。文末附有获取更多资源的指引。
322 17
|
6月前
|
人工智能 JSON 文字识别
通义两大模型,正式开源!
通义两大模型,正式开源!
|
负载均衡 Dubbo 应用服务中间件
框架巨擘:Dubbo如何一统异构微服务江湖,成为开发者的超级武器!
【8月更文挑战第8天】在软件开发中,微服务架构因灵活性和可扩展性备受欢迎。面对异构微服务的挑战,Apache Dubbo作为高性能Java RPC框架脱颖而出。它具备服务注册与发现、负载均衡及容错机制等核心特性,支持多种通信协议和序列化方式,能有效连接不同技术栈的微服务。Dubbo的插件化设计保证了面向未来的扩展性,使其成为构建稳定高效分布式系统的理想选择。
229 80
|
10月前
|
运维 安全 Ubuntu
自动化运维:使用Ansible进行服务器配置管理
在现代IT基础设施中,自动化运维是确保高效、稳定和安全服务的关键。本文将深入介绍如何使用Ansible这一开源工具来简化服务器配置管理工作,从基础安装到高级应用,我们将一步步展示如何通过Ansible Playbooks实现自动化部署和维护,旨在帮助读者构建更加灵活和可扩展的运维体系。
177 7
|
10月前
|
监控 安全 网络协议
|
Cloud Native 测试技术 Linux
云原生之使用Docker部署slash书签共享平台
云原生之使用Docker部署slash书签共享平台
256 1