Python新手最容易踩的坑
- 缩进错误
- 忘记引入模块
- 使用未定义的变量
- 不理解变量作用域
- 字符串格式化错误
- 乱用关键字
- 多余的符号
- 本期图书推荐:Python算法小讲堂---39个算法案例带你玩转Python
- 内容简介
- 获取方式
在学习 Python 的过程中,新手往往会遇到一些常见的陷阱,这些陷阱可能会导致代码错误或者不符合预期。本文将介绍一些 Python 新手最容易踩到的坑,并提供一些解决方案,帮助读者避免这些陷阱。
缩进错误
Python 使用缩进来表示代码块,而不是像其他编程语言那样使用大括号。因此,缩进错误是新手经常遇到的问题之一。在 Python 中,同一个代码块内的语句必须具有相同的缩进级别。
if True:
print("Indented incorrectly!") # 这行代码缩进错误
✨解决方案: 在编辑器中启用缩进显示,并始终保持一致的缩进风格,通常是使用四个空格。
忘记引入模块
Python 中的模块是可重用的代码单元,但是在使用模块中的函数或变量之前,必须先引入它们。如果忘记引入模块,Python 解释器将无法识别模块中的内容。
# 没有引入 math 模块
result = math.sqrt(25)
✨解决方案: 在代码的开头引入所有需要使用的模块,或者使用完整的模块名称来调用函数或变量。
使用未定义的变量
在使用变量之前,必须先对其进行定义。如果使用了未定义的变量,Python 解释器会引发 NameError 异常。
print(x) # x 未定义
✨解决方案: 确保在使用变量之前进行定义,并避免使用未定义的变量。
不理解变量作用域
Python 中的变量作用域分为全局作用域和局部作用域。在函数内部定义的变量通常具有局部作用域,而在函数外部定义的变量具有全局作用域。在函数内部使用全局变量时,需要使用 global 关键字声明。
x = 10def increment():x += 1 # 尝试修改全局变量 x,会引发 UnboundLocalError 异常increment()
✨解决方案: 理解 Python 中的变量作用域规则,并注意在函数内部正确处理全局变量。
字符串格式化错误
在 Python 中,有多种方式可以格式化字符串,例如使用 % 运算符、str.format() 方法或者 f-字符串。如果格式化字符串时出现错误,可能会导致程序崩溃或者输出不正确的结果。
name = "Alice"
age = 30
print("Her name is %s and she is %d years old" % name, age) # 格式化错误
✨解决方案: 熟悉不同的字符串格式化方法,并确保格式化字符串与提供的参数数量和类型匹配。
乱用关键字
Python 中有许多保留的关键字,这些关键字具有特定的含义,并被用于编程语言的语法和结构中。新手可能会误用这些关键字,导致代码出错或无法正常运行。
示例:
# 尝试将关键字作为变量名True = False
None = 10
✨解决方案: 避免将保留关键字用作变量名或标识符。如果不确定某个名称是否为关键字,可以通过以下代码查看
import keyword # 引入关键字模块print(keyword.kwlist) # 打印关键字列表
多余的符号
在编写 Python 代码时,多余的符号可能会导致语法错误或者代码行为不符合预期。这些符号包括不必要的空格、括号、逗号等。
示例:
# 不必要的空格
x = 10 + 5# 多余的逗号
numbers = [1, 2, 3,]# 不匹配的括号
result = (5 + 3
print(result)
✨解决方案: 仔细检查代码,删除多余的符号,并确保符号的使用符合 Python 的语法规范。建议使用代码编辑器或 IDE 提供的自动格式化功能来帮助排除多余的符号。
本期图书推荐:Python算法小讲堂—39个算法案例带你玩转Python
内容简介
推荐博主经常看的一本Python算法类书籍,
《Python算法小讲堂(视频精讲版)》通过由浅入深的39个Python语言实际案例,不仅帮助初学者学习Python语言的基本使用,还可以使读者从数据、算法等多个角度体验编程的魅力。本书从“如何解决问题”出发,讲述了常用的人工智能编程语言——Python语言的基本使用,帮助读者学习如何进行简单的数据处理,了解什么是算法,领略算法的魅力。当然,最终都是让初学者一行行地亲手写出代码,在计算机上运行自己写出的程序。
获取方式
京东购买链接:https://item.jd.com/14294684.html