已解决 SyntaxError: invalid syntax,Python报错原因和解决方案。

「作者简介」:冬奥会网络安全中国代表队,CSDN Top100,就职奇安信多年,以实战工作为基础著作 《网络安全自学教程》,适合基础薄弱的同学系统化的学习网络安全,用最短的时间掌握最核心的技术。

在这里插入图片描述

这篇文章带大家解决Python语法错误 SyntaxError: invalid syntax

在这里插入图片描述

SyntaxError: invalid syntax

  • 1、错误类型及排查思路
  • 2、问题描述
  • 3、原因&解决方案。
    • 3.1、Linux环境

1、错误类型及排查思路

常见的错误:

  • SyntaxError:语法错误。检查拼写错误,是否缺少冒号、括号、分号等。

  • IndentationError:缩进错误。检查代码的缩进格式是否一致,建议使用空格缩进。

  • ImportError:导入模块失败。检查模块名拼写是否正确、模块路径是否正确。

  • NameError:检查引用的变量或函数是不是写错了或者还没定义。

  • TypeError:检查传递的参数类型是否正确,操作的不同类型是否兼容。比如:整数和字符串不能直接相加。

  • ValueError:参数类型正确但参数的值无法被操作。比如将字符串"abc"转换成整数类型。

  • IndexError:索引错误。比如列表只有3个元素,你却访问的索引却是5。

  • AttributeError:对象没有这个属性。检查是否拼写错误、这个版本是否移除或更换了这个属性。

  • KeyError:字典中没有这个键。检查拼写是否有误。

  • FileNotFoundError:检查文件路径是否拼写正确,文件是否被移动或删除。

标准错误:

  • StopIteration:迭代器没有更多的值。比如列表有3个元素,你却迭代5次。
  • ZeroDivisionError:除零无意义,任何数都不要除以零。
  • NotImplementedError:尚未实现的方法
  • UnboundLocalError:访问未初始化的本地变量
  • TabError:Tab和空格混用
  • FloatingPointError:浮点计算错误
  • OverflowError:数值运算超出最大限制
  • AssertionError:断言语句失败
  • GeneratorExit:生成器发生异常来通知退出
  • GeneratorExit:生成器(generator)发生异常来通知退出
  • EOFError:没有内键输入,到达EOF标记
  • IOError:输入/输出操作失败
  • OSError:操作系统错误
  • WindowsError:系统调用失败
  • MemoryError:内存溢出错误(对于python解释器不是致命的)
  • ReferenceError:弱引用(Weak Refence)试图访问已经垃圾回收的对象
  • RuntimeError:一般的运行时错误
  • SystemError:一般的解释器系统错误
  • SystemExit:解释器请求退出
  • KeyboardInterrupt:用户中断执行(通常是输入^C)
  • UnicodeDecodeError:Unicode解码时的错误
  • UnicodeEncodeError:Unicode解码时的错误
  • UnicodeTranslateError:Unicode 转换时的错误

2、问题描述

代码明明写的没啥问题,但一执行就报错 SyntaxError: invalid syntax

在这里插入图片描述

报错信息翻译过来就是,语法错误,无效的语法。

3、原因&解决方案。

1)拼写错误,使用了Python不识别的关键字、语句不完整等。比如图中 from写成了form。

在这里插入图片描述

2)括号不匹配,比如前文少写了一个括号。

3)缩进错误,python用缩进来区分代码块,检查每个代码块的缩进是不是同一级别的,建议使用空格缩进,不要这里用tab缩进,那里用空格缩进。

4)引号不匹配,比如前文少写了一个引号,或者引号的中英文用混了,或者单双引号用混乱了。

5)未导入模块,比如你想用的函数需要导入其他模块,你以为你导入了,但实际上没有导入,或者模块导入错了。

比如用到 “string.ascii_uppercase[i]: i for i in range(10)”,这条语句是为了在range(10)范围内添加字母索引,但是string是属于string模块的,需要在之前 import sting

6)模块冲突,比如你导入了一个模块,想使用这个模块里的函数,但你当前目录下有个同名的“模块”,导致python找了你目录下的这个“模块”。

7)python版本不兼容,比如你复制了别人的代码,别人能运行但你啥也没改就运行不了,那就排查版本是不是不一样。

比如python2和python3的代码就是不兼容的,比如python3中 print要加(),python2中print就不用加括号。

python2里的很多函数到了pytyon3里就改名了,或者被遗弃了。把python换成相同的版本就可以了。

8)路径问题,比如路径没写全,路径没有进行转译。

9)忘记在 if, elif, else, for , while, class, def 声明末尾添加 冒号:

或者把 = 当成 == 用了;

或者if else 这类关键词没有对齐。

或者print打印时,字符串没有加引号。

3.1、Linux环境

Linux运行脚本时要在开头指定解释器 #!/usr/bin/env python3,意思是使用python3执行脚本,不指定就会使用系统默认的解释器。

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

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

相关文章

C++编程(七)继承

文章目录 一、继承(一)概念(二)语法格式(三)通过子类访问父类中的成员1. 类内2. 类外 (四)继承中的特殊成员函数1. 构造函数2. 析构函数3. 拷贝构造函数4. 拷贝赋值函数 二、多重继承…

怎样把热门抖音短视频下载保存到手机相册?

怎样把热门抖音短视频下载保存到手机相册? 1、在手机上打开抖音短视频APP; 2、打开后搜索或找到要下载保存的抖音短视频; 3、打开短视频后,点击右则的分享,并滑动找到保存到相册; 4、点击后等待完成下载,…

Python实现接糖果小游戏

介绍: 基于Pygame的糖果从屏幕顶部下落的游戏代码。这个游戏包括了一个可以左右移动的篮子来接住下落的糖果,接住糖果会增加得分。 代码: import pygame import random import os# 初始化pygame和设置屏幕大小 pygame.init() screen_width, screen_height 800, 6…

海康视频播放,包含h5和web插件

自行下载 海康开放平台 demo 都写得很清楚,不多描述 1.视频web插件 vue2写法,公共vue文件写法,调用文件即可 开始时需要以下配置,不知道的找对接平台数据的人,必须要,否则播不了 getParameterData: {po…

万字总结随机森林原理、核心参数以及调优思路

万字总结随机森林原理、核心参数以及调优思路 在机器学习的世界里,随机森林(Random Forest, RF)以其强大的预测能力和对数据集的鲁棒性而备受青睐。作为一种集成学习方法,随机森林通过构建多个决策树并将它们的预测结果进行汇总&…

暴雨来袭,陈赫家变“水帘洞”网友:赫哥滴滴打船吗?

在魔都上海,一场突如其来的暴雨 不仅让街道变成了河流,还悄悄上演了一场现实版的“水帘洞”奇遇 而这场奇遇的主角,竟然是喜剧界的明星——陈赫! 这天,乌云密布,电闪雷鸣 魔都的天空仿佛被捅了个窟窿 雨…

吴恩达《LangChain for LLM Application Development》课程笔记

目录 1. 前言 2. 课程笔记 2.1. 模型、提示和解析器 2.2. LLM记忆,上下文管理 2.3. 链式操作 2.4. 文档问答 2.4.1. stuff 方法 2.4.2. 其他方法 2.5. LLM应用评估 2.6. 代理 2.6.1. 预定义工具 2.6.2. 自定义工具 代码资源: 1. 前言 LangC…

文心一言 VS 讯飞星火 VS chatgpt (293)-- 算法导论21.4 2题

二、证明:每个结点的秩最多为 ⌊lgm⌋ 。如果要写代码,请用go语言。 文心一言: 在数据结构和算法中,当我们谈论“结点的秩”时,这通常与某些特定的数据结构(如B树或B树)相关,其中每…

代码随想录算法训练营第40天| 518. 零钱兑换 II、 377. 组合总和 Ⅳ、70. 爬楼梯 (进阶)

518. 零钱兑换 II 题目链接:518. 零钱兑换 II 文档讲解:代码随想录 状态:不会 思路: 和494.目标和类似,这题属于组合问题,当我们有一个硬币coin时,对于每个金额j,通过添加这个硬币&a…

平安养老险陕西分公司参加2024上半年省级单位驻富平帮扶团联席会

6月28日,平安养老险陕西分公司工会副主席武媛携驻村工作队赴富平县庄里镇永安村参加2024上半年度省级单位驻富平帮扶团联席会议。 会议由省委金融办副主任、省委金融工委委员李嘉辉及省委金融办选派挂职干部、富平县副县长席玮共同主持。 会上,席玮县长带…

吴恩达机器学习 第三课 week2 推荐算法(下)

目录 01 学习目标 02 基于内容的过滤算法 03 实现“电影推荐系统” 3.1 问题描述 3.2 算法实现 04 大项目(数据很大)的推荐方法※ 4.1 方法原理 4.2 实施示例 05 总结 01 学习目标 (1)理解基于内容的过滤算法&#xff08…

嵌入式问题分析思路

BUG解决总体思路: 1.1 定位bug范围及性质 要有效解决问题,首先要缩小范围,集中关注最近的代码变化。这有助于迅速定位可能引入问题的部分,避免无谓的时间浪费。检查最近的代码提交记录和修改日志,找出可能影响现有功能的变更。然…

如果使用Outlook 2024出现问题

大家好,才是真的好。 很多企业使用Domino服务器当作POP/IMAP邮箱服务器来使用,虽然这不能发挥Domino最佳效能,但也不失为一种简单用法。 另一种企业则使用Domino仅作为应用app平台,邮箱早已迁移至O365或其他平台,他们…

报销又乱又慢,财务如何解决报销困局?

费用报销是企业频繁发生的业务场景,不同的企业在费用报销的流程、标准、制度、管理上各有不同。作为一些公司日常运作中的薄弱环节,费用报销环节存在着较大的内控风险,如:费用报销滞后,造成会计信息的失真,…

【YOLOv5/v7改进系列】更换损失函数为CIOU、GIOU、SIOU、DIOU、EIOU、WIOUv1/v2/v3、Focal C/G/S/D/EIOU等

一、导言 在目标检测任务中,损失函数的主要作用是衡量模型预测的边界框(bounding boxes)与真实边界框之间的匹配程度,并指导模型学习如何更精确地定位和分类目标。损失函数通常由两部分构成:分类损失(用于…

我的世界服务器-高版本服务器-MC服务器-生存服务器-RPG服务器-幻世星辰

生存为主,RPG乐趣为辅,重视每位玩家的建议,一起打造心目中的服务器,与小伙伴一起探险我的世界! 服务器版本: 1.18.2 ~ 1.20.4 Q群: 338238381 服务器官网: 星辰毛毛雨-Minecraft高版本生存服务器我的世界…

springboot是否可以代替spring

Spring Boot不能直接代替Spring,但它是Spring框架的一个扩展和增强,提供了更加便捷和高效的开发体验。以下是关于Spring Boot和Spring关系的详细解释: Spring框架: Spring是一个广泛应用的开源Java框架,提供了一系列模…

EDI是什么?与ERP有何关系

EDI的发展过程 电子数据交换(Electronic Data Interchange,EDI)是一种通过电子方式传输商业文件的技术。EDI的历史可以追溯到20世纪60年代,当时企业开始使用计算机进行数据处理。最早的EDI系统是为解决大型企业间的信息交换问题而…

nccl 04 nvidia 官方小程序

1,代码重新编辑 为了地毯式地检查结果的正确性,这里修改了代码 主要步骤为 step1: data_p指向的空间中,分别生成随机数; step2: 分别拷贝到gpu的sendbuff的显存中; step3: 通过nccl_all_reduce sum;…

掌握 Python 中 isinstance 的正确用法

👋 简介 isinstance() 函数用于判断一个对象是否是一个特定类型或者在继承链中是否是特定类型的实例。它常用于确保函数接收到的参数类型是预期的。 📖 正文 1 语法 isinstance(object, classinfo) object参数是要检查的对象;classinfo参数…