这几道Python“基础”题,竟只有20%的人答对,几乎每个人都踩过其中的坑

简介: 当你学习了Python语法基础,开始尝试开发具备完整功能的代码时,必然会遇上一些Python的语言特性。这些特性,如果你没有专门了解过,亲自在代码里测试过,那么在刚开始使用时一定会遇上或大或小的麻烦。

大家好,欢迎来到Crossin的编程教室!


当你学习了Python语法基础,开始尝试开发具备完整功能的代码时,必然会遇上一些Python的语言特性。这些特性,如果你没有专门了解过,亲自在代码里测试过,那么在刚开始使用时一定会遇上或大或小的麻烦。所以我常说:


写代码的经验都是靠不断踩坑积累出来的!


有几个高频问题,我曾经在文章里问过的,当时答对的比例只有20%。后来也不断有新的学员掉进同样的坑。基本上这几个问题,迟早都会在代码中碰上。(如果你还没有,那一定是写得不够多


啥?有人说不相信?

现在我再把这几题放出来,你可以自测一下,答案见文末


1.


def func(m):
    m[0] = 20
    m = [4, 5, 6]
    return m
l = [1, 2, 3]
func(l)
print('l =', l)


程序的输出是:


A.l = [1, 2, 3]

B.l = [20, 2, 3]

C.l = [4, 5, 6]

D.l = [20, 5, 6]

E.程序报错


(此题当时正确率20%)


2.


m = [1, 2, [3]]
n = m[:]
n[1] = 4
n[2][0] = 5
print(m


程序的输出是:


A.[1, 2, [3]]

B.[1, 4, [3]]

C.[1, 2, [5]]

D.[1, 4, [5]]

E.其它结果


(此题当时正确率35%)


3.


from copy import deepcopy
a = [3, 4]
m = [1, 2, a, [5, a]]
n = deepcopy(m)
n[3][1][0] = -1
print(n)


程序的输出是:


A.[1, 2, [-1, 4], [5, [3, 4]]]

B.[1, 2, [-1, 4], [5, [-1, 4]]]

C.[1, 2, [3, 4], [5, [3, 4]]]

D.[1, 2, [3, 4], [5, [-1, 4]]]

E.报错

F.其他结果


(此题当时正确率50%)


如果全对,那我给你一个大大的(想必你也是在坑里摸爬滚打过来的);如果不对,我这里有相关的解读文章,欢迎取用


下面我要公布答案了:

1. B

2. C

3. B


当然,其实无需我给出答案,你只需要自己在开发环境中输入并运行以上代码,就可以得到结论。


但是当你没有运行代码之前,是否可以正确预测出代码的输出呢?


更进一步说,当你在开发中碰上了同样的场景,是否在写下代码之时就明白预期的效果和其背后的语法特性?又或者在程序出现了与你预期不符的结果,可以从这个角度定位到问题所在?


如果你对上面3段代码的结果感到不解,欢迎回复以下任意关键词之一,阅读相关教程文章:


可变对象、引用传递、深浅拷贝、全局变量


_往期文章推荐_


大家都是拷贝,凭什么你这么秀?

相关文章
|
Java
Alibaba Java Coding Guidelines
We are pleased to present Alibaba Java Coding Guidelines, which consolidates the best programming practices over the years from Alibaba Group's technical teams.
3572 0
|
编译器 C++ Windows
windows10安装gflags和glog
windows10安装gflags和glog
1060 0
|
SQL 安全 关系型数据库
|
Java
netbeans打包成jar
文件页里找到build.xml文件,打开在前 加入以下代码保存之   按 Ctrl+C 复制代码 ...
1034 0
|
6天前
|
存储 JavaScript 前端开发
JavaScript基础
本节讲解JavaScript基础核心知识:涵盖值类型与引用类型区别、typeof检测类型及局限性、===与==差异及应用场景、内置函数与对象、原型链五规则、属性查找机制、instanceof原理,以及this指向和箭头函数中this的绑定时机。重点突出类型判断、原型继承与this机制,助力深入理解JS面向对象机制。(238字)
|
5天前
|
云安全 人工智能 安全
阿里云2026云上安全健康体检正式开启
新年启程,来为云上环境做一次“深度体检”
1609 6
|
7天前
|
安全 数据可视化 网络安全
安全无小事|阿里云先知众测,为企业筑牢防线
专为企业打造的漏洞信息收集平台
1333 2
|
1天前
|
消息中间件 人工智能 Kubernetes
阿里云云原生应用平台岗位急招,加入我们,打造 AI 最强基础设施
云原生应用平台作为中国最大云计算公司的基石,现全面转向 AI,打造 AI 时代最强基础设施。寻找热爱技术、具备工程极致追求的架构师、极客与算法专家,共同重构计算、定义未来。杭州、北京、深圳、上海热招中,让我们一起在云端,重构 AI 的未来。
|
6天前
|
缓存 算法 关系型数据库
深入浅出分布式 ID 生成方案:从原理到业界主流实现
本文深入探讨分布式ID的生成原理与主流解决方案,解析百度UidGenerator、滴滴TinyID及美团Leaf的核心设计,涵盖Snowflake算法、号段模式与双Buffer优化,助你掌握高并发下全局唯一ID的实现精髓。
357 160
|
6天前
|
人工智能 自然语言处理 API
n8n:流程自动化、智能化利器
流程自动化助你在重复的业务流程中节省时间,可通过自然语言直接创建工作流啦。
436 6
n8n:流程自动化、智能化利器