Python 入门笔记:新手常踩的五个小坑

举报
yd_248599879 发表于 2026/11/06 00:19:08 2026/11/06
【摘要】 刚学 Python 时,语法看着简单,但有几处特别容易踩坑。下面记下五个新手最常遇到的问题。一、不要用可变对象做默认参数def add(item, lst=[]) 这样写时,lst 只在函数定义时创建一次,之后每次调用都会共用同一个列表,数据会越积越多。正确做法是把默认值写成 None,在函数里再新建列表。二、循环里不要直接删除列表元素在 for 循环里用 lst.remove(x) 删除元...

刚学 Python 时,语法看着简单,但有几处特别容易踩坑。下面记下五个新手最常遇到的问题。

一、不要用可变对象做默认参数

def add(item, lst=[]) 这样写时,lst 只在函数定义时创建一次,之后每次调用都会共用同一个列表,数据会越积越多。正确做法是把默认值写成 None,在函数里再新建列表。

二、循环里不要直接删除列表元素

在 for 循环里用 lst.remove(x) 删除元素会跳过后面的元素,因为删除后索引会错位。稳妥的做法是先收集要删除的元素再统一处理,或者用列表推导式生成一个新列表。

三、分清 / 和 //

Python 3 里 5 / 2 的结果是 2.5,想要整数结果要用 5 // 2。写分页、取整的代码时分清两者,能少很多 bug。

四、异常不要只捕获不处理

try/except 里写个 pass 就把异常吞掉,程序不报错,但问题被藏了起来。至少要把异常信息打印出来,或者记到日志里。

五、注意变量作用域

在函数里给全局变量赋值,要先声明 global,否则会新建一个同名局部变量。能用参数和返回值解决时,尽量少用全局变量。

小结:这些坑都不难,但第一次遇到往往要花不少时间排查。写代码时多留意默认值、循环删除、除法、异常和作用域,入门阶段会顺畅很多。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。