Python运行报错:IndentationError: expected an indented block的解决方法

迎风致 2024-12-19 08:42:57编程技术
1238

在Python编程中,缩进是一个非常重要的语法特性,它用于表示代码块的层次结构。与其他语言使用大括号 {} 来界定代码块不同,Python依赖于缩进来区分不同的代码块。因此,当缩进不正确时,Python解释器会抛出 IndentationError: expected an indented block 错误。本文将详细介绍这一错误的原因及其解决方法,帮助开发者在实际编程中避免和解决这类问题。

自学python,第一次遇到python的运行异常,竟然是这个鬼:

异常一:

IndentationError: expected an indented block

把这段英文报错翻译过来就是: 缩进错误: 期望一个缩进的块

贴下报错的代码的截图便于观察分析:

Python运行报错:IndentationError: expected an indented block的解决方法

好了,直接开始单刀直入解决这个问题,解决方案,在报错的逻辑代码的前面加个空格就一切ok了,一个缩进就解决了这个异常,解决这个bug不是主要目的,了解python的语法结构和特点才是我们该做的事情。

1.不像其他语言(C++, java 等等),就拿java举个例子:我们都知道在java里面方法后面是用{}来区分是否属于一个方法的,但在python里面方法体并不使用{}来区分,python的是用缩进来识别语法逻辑块的(i.e. if, while, for, def 等)。同一个if逻辑块下面的语句必须要有相同的缩进,否则python解析器怎么知道if块控制哪些语句?对吧,在python中,所有的逻辑代码块也就是一个方法中的代码,都必须使用相同的缩进来标识区分是同一个方法,否则编译会报错。贴个图解释下:

这里写图片描述

2、所谓缩进,就是每一行开头的空白。这个空白可以由多个空格或者制表符组成。python下面你怎么缩进都可以,比如3个空格,2个tab,这样都是合法的。但是同一个逻辑块下面必须用一样的。这一点在上面的图片和文字中已经做过解释和说明。

异常二:

安装后在代码编辑区不能写代码,如下图:

Python运行报错:IndentationError: expected an indented block的解决方法

不管怎么做那个白色的块儿都在,不能进行编辑输入代码,后来百度后发现已经有人给出了解决方案,很简单,是因为PyCharm安装了Vim插件 你可以在tools Vim emulator将对勾去掉就可以了,尝试后确实是这样的,在PyCharm中点击Tools然后在弹出的列表中,去掉Vim emulator的对勾就可以正常编辑了。

以上是本人的一点总结,以后有新的经验或者这方面的认知升级后,会重新完善该篇内容,如果有不对的地方欢迎留言指正改进,感激不尽!

总结

通过对Python中 IndentationError: expected an indented block 错误的详细解析,我们了解了这一错误的原因及其解决方法。缩进错误通常是由于代码块的缩进不一致或缺失引起的。本文提供的示例代码展示了如何检查和修正缩进问题,并提供了一些最佳实践,帮助开发者避免类似的错误。通过本文的学习,开发者可以掌握在Python中正确使用缩进的方法,提高代码的可读性和可维护性。希望本文的内容能为读者在实际编程中提供有价值的参考和帮助。无论是初学者还是有经验的开发者,正确处理缩进问题都是编写高质量Python代码的基础。

Python indentationerror
THE END
蜜芽
故事不长,也不难讲,四字概括,毫无意义。

相关推荐

Python yield 用法大全:轻松掌握生成器与迭代器设计
在Python中,yield关键字是构建生成器的核心工具,它通过状态保存机制实现了高效的内存管理和惰性计算。与传统的迭代器实现相比,yield能将迭代器设计从复杂的类定义简化为直...
2025-09-15 编程技术
554

基于Python的旅游数据分析可视化系统【2026最新】
本研究成功开发了基于Python+Django+Vue+MySQL的旅游数据分析可视化系统,实现了从数据采集到可视化展示的全流程管理。系统采用前后端分离架构,前端通过Vue框架构建响应式界...
2025-09-13 编程技术
579

手把手教你用Python读取txt文件:从基础到实战的完整教程
Python作为数据处理的利器,文件读写是其基础核心功能。掌握txt文件读取不仅能处理日志、配置文件等常见场景,更是理解Python文件I/O的基石。本文ZHANID工具网将从基础语法到...
2025-09-12 编程技术
553

Python Flask 入门指南:从零开始搭建你的第一个 Web 应用
Flask作为 Python 中最轻量级且灵活的 Web 框架之一,特别适合初学者快速上手 Web 应用开发。本文将带你一步步了解如何在本地环境中安装 Flask、创建一个简单的 Web 应用,并...
2025-09-11 编程技术
539

Python 如何调用 MediaPipe?详细安装与使用指南
MediaPipe 是 Google 开发的跨平台机器学习框架,支持实时处理视觉、音频和文本数据。本文脚本之家将系统讲解 Python 环境下 MediaPipe 的安装、配置及核心功能调用方法,涵盖...
2025-09-10 编程技术
581

基于Python开发一个利率计算器的思路及示例代码
利率计算是金融领域的基础需求,涵盖贷款利息、存款收益、投资回报等场景。传统计算依赖手工公式或Excel表格,存在效率低、易出错等问题。Python凭借其简洁的语法和强大的数学...
2025-09-09 编程技术
521