已解决 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,一经查实,立即删除!

相关文章

2065.最大化一张图中的路径价值

解题思路 枚举 枚举从0开始所有可能的路径,代码能力就是如何枚举,递归回溯 递归函数:当前节点,当前路径总时间,节点的价值之和。对相联通的节点进行递归搜索,如果回到节点0,则更新。 超过总时…

精灵图和base64的区别

精灵图:把多张小图整合到一张大图上,利用定位的一些属性把小图显示在页面上,这样访问页面的时候,可以减少请求次数,提高加载速度。 base64:这是一种传输8bit字节代码的编码方式,是一种用64个字符…

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…

【LeetCode】反转字符串中的单词

目录 一、题目二、解法完整代码 一、题目 给你一个字符串 s ,请你反转字符串中 单词 的顺序。 单词 是由非空格字符组成的字符串。s 中使用至少一个空格将字符串中的 单词 分隔开。 返回 单词 顺序颠倒且 单词 之间用单个空格连接的结果字符串。 注意&#xff1…

读hugging face的daily paper随笔

hugging face’s daily paper 2024.06.29 OMG-LLaVA 像素级视觉理解、推理。 实现了image-level、object-level、pixel-level的推理和理解。 Step-DPO LLM长链推理的step-wise偏好优化,提高LLM的数学推理能力。 MUMU 引导多模态的图像生成,从多模…

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

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

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

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

[Day 20] 區塊鏈與人工智能的聯動應用:理論、技術與實踐

AI在醫療領域的創新應用 隨著科技的快速發展,人工智能(AI)在各行各業的應用越來越廣泛,醫療領域也不例外。AI技術在醫療中的應用不僅提高了診斷的準確性,還改善了病患的治療效果,優化了醫療資源的配置。本…

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

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

吴恩达《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树)相关,其中每…

SSH特性|组成|SSH是什么?

SSH,全称为Secure Shell,是由Internet Engineering Task Force (IETF)的网络工作小组制定的一种网络安全协议。它旨在为网络服务提供安全的远程登录和其他网络服务,如文件传输,端口转发等,以保护数据的机密性和完整性。…

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

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

从零学习python打卡笔记 第一天

小学生都开始学python了,你还有什么资格不学? 打卡笔记的python版本是3.12.4 一、python能干什么工作? web全栈工程师、大数据分析工程师、爬虫工程师、人工智能工程师、游戏开发工程师、自动化测试工程师、搜索引擎工程师、自动化运维工程师…

RSA加密算法工具类

这里写自定义目录标题 1. RSA加密算法介绍加密和签名**划重点:签名的作用不是防泄密,而是防篡改****对信件内容进行加密****对信息内容追加签名** 为什么在使用非对称加密算法(如 RSA)时,正确的使用方法是公钥加密&…

使用Redisson实现分布式锁详解

摘要 在分布式系统中,保证多个进程或线程对共享资源的互斥访问是非常重要的。本文将介绍如何使用Redisson库来实现分布式锁,以及它的优势和使用场景。 1. 分布式锁的基本概念 在分布式系统中,由于多个节点可能同时访问同一个资源&#xff…