解决:IndentationError:unindent does not match any outer indentation level

news2025/2/21 1:31:03

解决:IndentationError:unindent does not match any outer indentation level



文章目录

  • 解决:IndentationError:unindent does not match any outer indentation level
    • 背景
    • 报错问题
    • 报错翻译
    • 报错位置代码
    • 报错原因
    • 解决方法
      • 今天的分享就到此结束了



背景

在使用之前的代码时,报错:
Traceback (most recent call last):
File , line 1, in
def saveRecord(url, title):
IndentationError:unindent does not match any outer indentation level



报错问题


  Traceback (most recent call last): 
    File , line 1, in  
      def saveRecord(url, title): 
  IndentationError:unindent does not match any outer indentation level



报错翻译

主要报错信息内容翻译如下所示:


  Traceback (most recent call last): 
    File , line 1, in  
      def saveRecord(url, title): 
  IndentationError:unindent does not match any outer indentation level

翻译:


  回溯(最近一次调用最后一次): 
 def saveRecord(url, title):
 中的文件 “”,第 1 行 
 缩进错误:未缩进与任何外部缩进级别都不匹配



报错位置代码


...
      def saveRecord(url, title): 
...

截图如下

在这里插入图片描述



报错原因

经过查阅资料,发现是编写的代码没有按正确格式进行缩进。

补充

Python的缩进规则非常重要,因为它用于表示代码块的开始和结束,而不是使用大括号或其他特殊字符。这使得Python的代码更具可读性,但同时也要求程序员必须严格遵守缩进规则。以下是Python缩进的一些基本原则:

  1. 同一代码块的语句必须有相同的缩进。每一新的代码块(如:if语句,for循环,函数定义等)都需要增加一级缩进。

  2. 通常每一级缩进使用4个空格。这是Python社区的推荐实践,也是大多数IDE和代码编辑器的默认设置。尽管Python语法允许使用任意数量的空格进行缩进,但混合使用不同数量的空格会使代码难以阅读,也可能导致错误。

  3. 当一个代码块结束后,缩进应该回退到上一级代码块的缩进级别。

小伙伴们按下面的解决方法即可解决!!!



解决方法

要解决这个错误,需要需要按照规范,对代码进行正确的缩进。本例是在定义函数时增加了额外的空格,造成缩进不一致而报错的。

正确的代码是:


...
def saveRecord(url, title): 
...

如果你的Python代码有缩进错误,可能有以下几种原因:

  • 你可能在不应该增加缩进的地方增加了缩进。例如,如果你在一个没有冒号的行后增加了缩进,Python解释器会报错。

  • 你可能在一个代码块中混合使用了不同数量的空格进行缩进。例如,如果你在同一个代码块中既使用了4个空格的缩进又使用了2个空格的缩进,Python解释器会报错。

  • 你可能没有正确地结束一个代码块。例如,如果你在一个函数定义的最后忘记了return语句,Python解释器可能会报错。

对于肉眼分辨不清楚缩进的代码,可以借助IDE:

文本编辑器Notepad++

如文本编辑器Notepad++,有如下设置,可以显示所有的字符。

视图 –> 显示符号 –> 显示空格与制表符

这样就可以看到Python代码到底有没有正确缩进了。

快捷键

如果你使用的IDE或代码编辑器有自动格式化功能,它可以帮助你自动修复缩进错误。部分工具的快捷键为:选中代码直接快捷键Ctrl+Alt+L

black组件

安装和使用black组件的命令如下:

pip install black &&  balck  your_python_code.py

重新手动缩进

实在不行,就只能用笨办法,把代码的缩进全部删掉重新手打了。



今天的分享就到此结束了

欢迎点赞评论关注三连

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1291849.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Ui自动化概念 + Web自动化测试框架介绍!

1.UI自动化测试概念:我们先明确什么是UI UI,即(User Interface简称UI用户界面)是系统和用户之间进行交互和信息交换的媒介 UI自动化测试: Web自动化测试和移动自动化测试都属于UI自动化测试,UI自动化测试就是借助自动化工具对程序UI层进行自动化的测试 …

Mysql之数据处理增删改

Mysql之数据处理增删改查 插入数据INSERT INTO语句的使用INSERT 与子查询结合 更新数据(修改数据)UPDATE SET语句 删除数据DELETE FROM语句 Mysql8新特性:计算列 插入数据 INSERT INTO语句的使用 用 INSERT INTO 语句,向表中插入数据 方式一:…

网络安全威胁——DDoS攻击

DDoS攻击 1. 定义2. DDoS攻击类型2.1 网络层攻击2.2 传输层攻击2.3 应用层攻击 3.DDoS攻击态势特点 1. 定义 分布式拒绝服务(DDoS)攻击是一种常见的网络攻击形式。攻击者利用恶意程序对一个或多个目标发起攻击,企图通过大规模互联网流量耗尽…

活动预告 | 中国数据库联盟(ACDU)中国行第四站定档西安,邀您探讨数据库前沿技术

作为墨天轮社区与中国数据库联盟的品牌活动之一,【ACDU 中国行】已走过深圳、杭州、成都三大城市,在线下汇集数据库领域的行业知名人士,共同探讨数据库前沿技术及其应用,促进行业发展和创新,同时也为开发者们提供一个友…

什么是HTTPS加密协议?

文章目录 应用层协议什么是HTTP?认识URL工具 什么是HTTPS协议?什么是“加密”? 应用层 我们程序猿写的一个个解决我们实际问题,满足我们日常需求的网络程序,都是在应用层。 协议 协议是一种 “约定”。socket api的…

富时中国a50指数准确吗

富时中国A50指数简介 富时中国A50指数(FTSE China A50 Index)是富时罗素指数有限公司(FTSE Russell)编制的,旨在反映中国A股市场50家市值较大、流动性较好的公司的股价表现。它是国际上对中国A股市场投资者影响较大的…

springbootmybatisPlus

分页 1.加 Configuration public class MybatisPlusConfig {Beanpublic MybatisPlusInterceptor mybatisPlusInterceptor() {MybatisPlusInterceptor interceptor new MybatisPlusInterceptor();interceptor.addInnerInterceptor(new PaginationInnerInterceptor());return …

前端笔记(四)Flex 布局

标准流 标准流也叫文档流,指的是标签在页面中默认的派不规则,例如:块元素独占一行,行内元素可以一行显示多个。 但是很多的网页布局都是块元素在一行中显示的,这时候就需要浮动和 Flex 布局,浮动只需要了解…

【Java基础系列】JavaWeb入门

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

【LeetCode】2629. 复合函数

复合函数 题目题解 题目 请你编写一个函数,它接收一个函数数组 [f1, f2, f3,…, fn] ,并返回一个新的函数 fn ,它是函数数组的 复合函数 。 [f(x), g(x), h(x)] 的 复合函数 为 fn(x) f(g(h(x…

MYSQL练题笔记-高级查询和连接-最后一个能进入巴士的人

一、题目相关内容 1)相关的表和题目 2)帮助理解题目的示例,提供返回结果的格式 二、自己初步的理解 一群人要上巴士但是巴士有体重限制,那只能有限个人才能上去 最后输出这个最后一个上去还不超重的人的名字 我认为首先要缩小…

Java+Swing: 登录和重置按钮的点击事件 整理6

1. 在Login类中给按钮添加事件 // 按钮添加鼠标点击事件loginButton.addActionListener();resetButton.addActionListener(); 2. 创建一个事件处理的类, 该类实现了ActionListener package com.handler;/*** Author:xiexu* Date:2023/12/7 13…

K8S 删除命令空间时 一直卡住怎么办?

当使用完一个命名空间后,想删除了又删除不掉,这个时候查看命名空间的状态一直是Terminating。使用强制删除,也是还是不行。(找了好多办法都不行) [rootk8s-master kubernetes-yaml]# kubectl delete ns mem-example Er…

3DMAX UV贴图修改插件安装卸载方法

3DMAX UV贴图修改插件安装卸载方法 3dMax贴图修改插件PolyUnwrapper是为纹理艺术家设计的一整套专业工具,尤其适用于建筑和游戏行业。 它包含许多功能,将大大帮助您改进UV展开的工作流程。 【主要功能特点】 -多重缝合。一次缝合多个壳 -自定义打包算…

MTTS | 多语言多人的VITS语音合成项目实现

----------------------------------🗣️ 语音合成 VITS相关系列直达 🗣️ ------------------------------------- 🫧VITS :TTS | 保姆级端到端的语音合成VITS论文详解及项目实现(超详细图文代码) 🫧MB-iSTFT-VITS&am…

2024年江苏省职业院校技能大赛 信息安全管理与评估 第二阶段教师组 (样卷)

2024年江苏省职业院校技能大赛 信息安全管理与评估 第二阶段教师组 (样卷) 项目竞赛样题 本文件为信息安全管理与评估项目竞赛-第二阶段样题,内容包括:网络安全事件响应、数字取证调查、应用程序安全。 本次比赛时间为180分钟。 介绍 GeekSec专注技能竞…

Java聊天程序(一对一)简单版

我们首先要完成服务端,不然出错,运行也要先运行服务端,如果不先连接服务端,就不监听,那客户端不知道连接谁 服务端 import java.awt.BorderLayout; import java.awt.event.ActionEvent; import java.awt.event.Actio…

常见数据同步工具之实时同步

实时数据同步是现代数据处理中非常重要的一环。在常见的数据同步工具中,Flume、Flink CDC和DataX都是非常受欢迎的选择。它们各自有自己的工作原理、优势和劣势。 Flume主要用于日志传输,简单易用但对特定数据源可能有限;Flink CDC基于CDC技术…

jQuery ajax读取本地json文件 三级联动下拉框

步骤 1:创建本地JSON文件 {"departments": [{"name": "会计学院","code": "052"},{"name": "金融学院","code": "053"},{"name": "财税学院",&qu…

基于若依的ruoyi-nbcio流程管理系统支持支持定时边界事件和定时捕获事件

更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码&#xff1a; https://gitee.com/nbacheng/ruoyi-nbcio 演示地址&#xff1a;RuoYi-Nbcio后台管理系统 1、定时边界事件 <template><div class"panel-tab__content"><!--目前只处理定…