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

news2024/11/16 19:51:47

「作者简介」:冬奥会网络安全中国代表队,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.coloradmin.cn/o/1883187.html

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

相关文章

【WSL2+Ubuntu+Docker Desktop】迁移到D盘

如果不会安装Ubuntu&#xff0c;可以看这篇文章 安装到C盘后先创建Ubuntu实例 下载完之后先创建实例&#xff0c;输入自己的实例名以及密码 迁移wsl-2 wsl默认保存在C:\Users<主机名>\AppData\Local下 随着在子系统上安装的软件/服务越来越多&#xff0c;C盘的空间也所…

前端——在本地搭建Vue单页应用

目录 1、安装最新node.js 2、打开命令行窗口 3、进入要保存项目的目录下 4、安装 Vue CLI 5、创建新项目&#xff0c;选择功能 5.1 新建项目 5.2 Please pick a preset 5.3 Check the features needed for your project 5.4 Choose a version of Vue.js 5.5 Use hist…

php 通过vendor文件 生成还原最新的composer.json

起因&#xff1a;因为历史原因&#xff0c;在本项目中composer.json基本算废了&#xff0c;没法直接使用composer管理扩展&#xff0c;今天尝试修复一下composer.json。 历史文件&#xff0c;可以看出来已经很久没有维护了&#xff0c;我们主要是恢复require的信息 {"na…

Linux4(Docker)

目录 一、Docker介绍 二、Docker结构 三、Docker安装 四、Docker 镜像 五、Docker 容器 六、Docker 安装nginx 七、Docker 中的MySQL部署 一、Docker介绍 Docker&#xff1a;是给予Go语言实现的开源项目。 Docker的主要目标是“Build,Ship and Run Any App,Anywhere” 也…

ROS2用c++开发参数节点通信

1.创建节点 cd chapt4/chapt4_ws/ ros2 pkg create example_parameters_rclcpp --build-type ament_cmake --dependencies rclcpp --destination-directory src --node-name parameters_basic --maintainer-name "joe" --maintainer-email "1027038527qq.com&…

Spring Security 认证流程

Spring Scurity是spring生态下用于认证和授权的框架&#xff0c;具有高度的灵活性和可扩展行&#xff0c;本节主要对Spring Security的认证过程中进行概括性的介绍&#xff0c;主要介绍在该过程中&#xff0c;会涉及到哪些组件以及每个组件所承担的职责&#xff0c;希望大家可以…

数据驱动测试DDT之Selenium读取Excel文件

&#xff08;1&#xff09;安装xlrd pip3 install xlrd &#xff08;2&#xff09;示例脚本 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 ​import pytest import xlrd def get_data(): filename"F:\\学习\\自动化测试\\selenium自动化…

OpenStack开源虚拟化平台(一)

目录 一、OpenStack背景介绍&#xff08;一&#xff09;OpenStack是什么&#xff08;二&#xff09;OpenStack的主要服务 二、计算服务Nova&#xff08;一&#xff09;Nova组件介绍&#xff08;二&#xff09;Libvirt简介&#xff08;三&#xff09;Nova中的RabbitMQ解析 OpenS…

简单配置VScode轻量级C++竞赛环境

1. 安装拓展 Chinese是中文&#xff0c;需要重启才可以运行&#xff0c;C/C拓展只是进行语法代码提示&#xff0c;不需要进行任何配置修改&#xff0c;默认即可。 2. 创建文件 C是工作文件夹&#xff0c;.vscode是配置文件夹&#xff0c;里面建一个tasks.json文件&#xff0c;…

Canvas 指纹:它是什么以及如何绕过它

什么是 Canvas 指纹&#xff1f; 网络浏览器在执行其功能时会收集各种信息。当这些信息中的某些被用于识别网站用户时&#xff0c;这被称为浏览器指纹。 浏览器指纹包括以下有关浏览器的信息&#xff1a;设备型号、浏览器类型和版本、操作系统 (OS)、屏幕分辨率、时区、p0p 文…

PC系统安装引导:2、进入维护环境

目录 &#x1f345;点击这里查看所有博文 闲来无事&#xff0c;记录下自己以往多年总结出的一套系统维护的方法。以供有需要的人学习使用。例如&#xff0c;系统崩溃了无法启动怎么办&#xff0c;如何重做系统&#xff0c;如何安装双系统&#xff0c;如何引导多系统&#xff0…

告别地推烦恼,Xinstall智能推广系统,让APP推广更高效!

在移动互联网时代&#xff0c;APP的推广与运营成为了每个开发者必须面对的问题。地推作为一种传统的推广方式&#xff0c;虽然有着其独特的优势&#xff0c;但也面临着诸多挑战。如何在地推中脱颖而出&#xff0c;实现高效推广&#xff1f;今天&#xff0c;我们就来聊聊Xinstal…

5个让页面“活“起来的CSS特效

大家好,欢迎来到程序视点。 随着越来越多的浏览器对CSS3支持的不断完善&#xff0c;设计师和开发者们有了更多的选择去实现一些炫酷特效。这里整理了最近项目中使用到的5个比较实用的CSS3动画演示。让我们一起看看CSS3是如何让页面秀起来的。 3D倒影翻转 超炫酷3D倒影翻转动…

某安全公司DDoS攻击防御2024年6月报告

引言&#xff1a; 在2024年6月&#xff0c;网络空间的安全挑战汹涌澎湃。分布式拒绝服务&#xff08;DDoS&#xff09;攻击频发&#xff0c;针对云服务、金融科技及在线教育平台的精密打击凸显出当前网络威胁环境的严峻性。 某安全公司作为网络安全防护的中坚力量&#xff0c…

chunkers/maxent_ne_chunker/english_ace_multiclass.pickle 找不到

首先在这个nltk_data &#xff1a; NLTK Data官方下的数据集&#xff0c;找不到english_ace_multiclass.pic 说明缺少这个文件 : 那么在 nlp/resources/chunkers/maxent_ne_chunker/english_ace_multiclass.pickle at master teropa/nlp (github.com) 下载那两个文件 : 然…

C++专业面试真题(1)学习

常用Linux命令 ls&#xff1a;列出当前目录内容 ls -l&#xff1a;详细信息列表 ls -a&#xff1a;包括隐藏文件 cd&#xff1a;更改目录 pwd&#xff1a;显示当前目录路径 mkdir&#xff1a;创建新目录 rmdir&#xff1a;删除空目录 rm&#xff1a;删除文件或目录 rm -…

拒绝胶感,清纯甜美邻家女孩!逼真!逼真!SD1.5 更适合初恋般的国产真人大模型—— CNrealisticMIXV40

老铁说看惯了AI艺术大片&#xff0c;想寻找适合生成邻家女孩青涩照片的模型。老徐今天应邀&#xff0c;针对邻家女孩青涩风格进行下尝试。老徐此前推荐过一款支持各种真实&#xff0c;摄影&#xff0c;写实风格模型的合体模型——赛博Dream | CNrealistic_MIX_V40无损修剪版。 …

Open3D 点云快速全局配准FGR算法(粗配准)

目录 一、概述 1.1原理和步骤 1.2关键技术和优势 1.3应用场景 二、代码实现 2.1 关键代码 2.1.1.函数&#xff1a;execute_fast_global_registration 2.1.2调用registration_fgr_based_on_feature_matching函数 2.2完整代码 三、实现效果 3.1原始点云 3.2粗配准后点…

03 _ 类型基础(2):动态类型与静态类型

静态类型语言与动态类型语言 通俗定义 静态类型语言&#xff1a;在编译 阶段确定所有变量的类型 动态类型语言&#xff1a;在执行阶段确定所有变量的类型 Javascript 与 C 对比 静态类型与动态类型对比 其他定义 强类型语言&#xff1a;不允许程序在发生错误后继续执行 语…

【小贪】项目实战——Zero-shot根据文字提示分割出图片目标掩码

目标描述 给定RGB视频或图片&#xff0c;目标是分割出图像中的指定目标掩码。我们需要复现两个Zero-shot的开源项目&#xff0c;分别为IDEA研究院的GroundingDINO和Facebook的SAM。首先使用目标检测方法GroundingDINO&#xff0c;输入想检测目标的文字提示&#xff0c;可以获得…