Python 中的模块是可重用的代码单元,但是在使用模块中的函数或变量之前,必须先引入它们。如果忘记引入模块,Python 解释器将无法识别模块中的内容。
# 没有引入 math 模块 result = math.sqrt(25)
✨解决方案: 在代码的开头引入所有需要使用的模块,或者使用完整的模块名称来调用函数或变量。
使用未定义的变量
在使用变量之前,必须先对其进行定义。如果使用了未定义的变量,Python 解释器会引发 NameError 异常。
print(x) # x 未定义
✨解决方案: 确保在使用变量之前进行定义,并避免使用未定义的变量。
不理解变量作用域
Python 中的变量作用域分为全局作用域和局部作用域。在函数内部定义的变量通常具有局部作用域,而在函数外部定义的变量具有全局作用域。在函数内部使用全局变量时,需要使用 global 关键字声明。
x = 10 def 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语言的基本使用,帮助读者学习如何进行简单的数据处理,了解什么是算法,领略算法的魅力。当然,最终都是让初学者一行行地亲手写出代码,在计算机上运行自己写出的程序。
一、Python所有方向的学习路线
Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
二、学习软件
工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。
三、入门学习视频
我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。