【Python基础】学习Python常见的几种运行报错,看完之后,你就不会再犯错了!!!(附带解析)

学习Python时,遇到运行时错误是很常见的,这些错误通常是因为代码中存在语法错误、逻辑错误或是对Python的某些特性理解不够深入所导致的。

如果你也是刚入门的小伙伴呢,小编为你们准备了入门Python学习籽料和Python入门实践,点击领取(无偿获得)

1. NameError:未定义名称

源码

print(message)

解析
在尝试打印变量message时,Python解释器找不到名为message的变量,因为它从未被定义。这会导致NameError

修正

message = "Hello, World!"  
print(message)

2. IndexError:索引超出序列边界

源码

my_list = [1, 2, 3]  
print(my_list[3])

解析
尝试访问列表my_list中索引为3的元素,但列表的索引是从0开始的,所以最大的索引是2。尝试访问不存在的索引会导致IndexError

修正

my_list = [1, 2, 3]  
print(my_list[2])  # 输出3

3. TypeError:类型错误

源码

result = 1 + "2"

解析
尝试将整数1与字符串"2"相加,这是不允许的,因为Python不知道如何将这两种类型相加。这会导致TypeError

修正

result = 1 + int("2")  # 将字符串转换为整数  
print(result)  # 输出3

4. ZeroDivisionError:除数为零

源码

result = 10 / 0

解析
尝试将10除以0,这在数学上是未定义的,在Python中会导致ZeroDivisionError

修正

result = 10 / (1 if some_condition else 1)  # 确保除数不为零  
print(result)

5. AttributeError:尝试访问不存在的属性

源码

class MyClass:  
    pass  
  
obj = MyClass()  
print(obj.attribute)

解析
尝试访问MyClass实例objattribute属性,但该属性从未在类定义中声明或初始化,因此会导致AttributeError

修正

class MyClass:  
    def __init__(self):  
        self.attribute = "Hello"  
  
obj = MyClass()  
print(obj.attribute)  # 输出Hello

​最后,如果你也想自学Python,可以关注我。

我还整理出了一套系统的学习路线,这套资料涵盖了诸多学习内容: 【点击这里】领取!

包括:Python激活码+安装包、Python web开发,Python爬虫,Python数据分析,人工智能、自动化办公等学习教程。带你从零基础系统性的学好Python!开发工具,基础视频教程,项目实战源码,51本电子书籍,100道练习题等。相信可以帮助大家在最短的时间内,能达到事半功倍效果,用来复习也是非常不错的。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值