python中出现invalid syntax报错的几种原因分析


Posted in Python onFebruary 12, 2022

出现invalid syntax报错的几种原因

这篇文章旨为刚接触python不久的朋友,提供一点帮助,请在检查代码没有主要问题时再看是否存在以下问题。

一般来说,写完代码运行时,如果代码中有错误,解释器会提示错误信息,按照提示信息,一般很快可以找出错误,进行修改。但也有一些时候错误提示的信息不是那么明确,代码检查了几遍仍找不出问题,就比较头疼了。今天我们来说一个常见的invalid syntax,在写代码的过程中,哪些小细节错误容易导致invalid syntax报错。更多的原因,后续逐渐补充......

1.符号使用不正确

例如:只写了半个括号,使用了中文符号等

像下面的代码中,76行少了一个右括号。

……
        else:
            header = "HTTP/1.1 200 OK\r\n"
            header += "\r\n"
            body = "hahahaha"
            response = header + body
            new_socket.send(response.encode("utf-8")
        new_socket.close()
    def run_forever(self):
        while True:
            new_socket, client_addr = self.tcp_server_socket.accept()
            
            p = multiprocessing.Process(target=self.service_client, args=(new_socket,))
            p.start()
            
            new_socket.close()
            ……

运行代码,则会报错:

 File "w01.py", line 78
    new_socket.close()
             ^
SyntaxError: invalid syntax

其实,78行并没有错误,这时我们就在78行附近寻找,看是否有成对的符号(如括号)未成对使用的情况。在76行补全右括号后,代码运行正常。

有些解释器会有自动补全符号的功能。有些则没有,这时对于新手朋友要特别注意,在写成对的符号时(例如括号、引号等)一定要一次把一对符号写完,再在符号中填写内容,避免因这种情况出现bug,后续检查花费大量时间。

2.代码缩进问题

python是一种严格依赖缩进的语言,如果缩进不正确或缩进格式不统一,一般错误信息会明确告诉你,但有时也会出现invalid syntax报错。

所谓缩进不正确,python的缩进是四个空格或一个TAB,如果缩进三个空格,一定报错

所谓缩进格式,即不能空格和TAB混用。如果不清楚是否存在混用,可以使用sublime统一调整即可。

invalid syntax——无效语法

错误代码块

num_1=float(input(“请输入第一个数:”))
num_2=float(input(“请输入第二个数:”))
c=(input(“请选择运算类型:1.+ 2- 3.* 4./ 5.% :”))
if c==+
out=num_1 + num_2
if c==-:
out=num_1 - num_2
if c==*:
out=num_1 * num_2
if c==/:
out=num_1 / num_2
if c==%:
out=num_1 % num_2
print(“运算结果是:”,out)`

出现错误:invalid syntax

在此程序中,把“、+、-、、/等运算符直接用在if条件中造成报错,故字符串类型和数值类型*不一样,应用“+”、“-”符号作为判断条件。

调整后代码

num_1=float(input(“请输入第一个数:”))
num_2=float(input(“请输入第二个数:”))
c=(input(“请选择运算类型:1.+ 2- 3.* 4./ 5.% :”))
if c=="+":
out=num_1 + num_2
if c=="-":
out=num_1 - num_2
if c=="*":
out=num_1 * num_2
if c=="/":
out=num_1 / num_2
if c=="%":
out=num_1 % num_2
print(“运算结果是:”,out)

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
OpenCV+python手势识别框架和实例讲解
Aug 03 Python
Django 路由系统URLconf的使用
Oct 11 Python
不到40行代码用Python实现一个简单的推荐系统
May 10 Python
Python3实现定时任务的四种方式
Jun 03 Python
使用python画社交网络图实例代码
Jul 10 Python
PyCharm中代码字体大小调整方法
Jul 29 Python
PyCharm使用之配置SSH Interpreter的方法步骤
Dec 26 Python
django 取消csrf限制的实例
Mar 13 Python
在pycharm中关掉ipython console/PyDev操作
Jun 09 Python
python Paramiko使用示例
Sep 21 Python
python爬取抖音视频的实例分析
Jan 19 Python
详解Python中的进程和线程
Jun 23 Python
python ConfigParser库的使用及遇到的坑
Feb 12 #Python
Python制作春联的示例代码
Jan 22 #Python
Python制作表白爱心合集
基于Python实现一个春节倒计时脚本
Jan 22 #Python
详解Python如何批量采集京东商品数据流程
Jan 22 #Python
用Python实现屏幕截图详解
Jan 22 #Python
Python实现学生管理系统并生成exe可执行文件详解流程
Jan 22 #Python
You might like
深入理解PHP内核(一)
2015/11/10 PHP
thinkphp修改配置进入默认首页的方法
2017/02/07 PHP
PHP内部实现打乱字符串顺序函数str_shuffle的方法
2019/02/14 PHP
ThinkPHP5&5.1框架关联模型分页操作示例
2019/08/03 PHP
PHP实现创建一个RPC服务操作示例
2020/02/23 PHP
js和jquery对dom节点的操作(创建/追加)
2013/04/21 Javascript
jquery查找tr td 示例模拟
2014/05/08 Javascript
node.js中的path.basename方法使用说明
2014/12/09 Javascript
轻松创建nodejs服务器(10):处理POST请求
2014/12/18 NodeJs
7个去伪存真的JavaScript面试题
2016/01/07 Javascript
基于jQuery日历插件制作日历
2016/03/11 Javascript
Javascript中的数组常用方法解析
2016/06/17 Javascript
JS中事件冒泡和事件捕获介绍
2016/12/13 Javascript
JavaScript 函数的定义-调用、注意事项
2017/04/16 Javascript
纯JS实现简单的日历
2017/06/26 Javascript
Vue中div contenteditable 的光标定位方法
2018/08/25 Javascript
Vue利用History记录上一页面的数据方法实例
2018/11/02 Javascript
vue封装swiper代码实例解析
2019/10/08 Javascript
微信小程序事件流原理解析
2019/11/27 Javascript
微信小程序实现简单文字跑马灯
2020/05/26 Javascript
小程序自动化测试的示例代码
2020/08/11 Javascript
[03:37]2015国际邀请赛第四日现场精彩集锦
2015/08/08 DOTA
在Python程序中操作文件之isatty()方法的使用教程
2015/05/24 Python
在Django的模型中执行原始SQL查询的方法
2015/07/21 Python
Python 、Pycharm、Anaconda三者的区别与联系、安装过程及注意事项
2019/10/11 Python
python文件排序的方法总结
2020/09/13 Python
修复iPhone的safari浏览器上submit按钮圆角bug
2012/12/24 HTML / CSS
HTML5中语义化 b 和 i 标签
2008/10/17 HTML / CSS
HTML5实现锚点时请使用id取代name
2013/09/06 HTML / CSS
斯凯奇新西兰官网:SKECHERS新西兰
2018/02/22 全球购物
工业设计专业推荐信
2013/10/29 职场文书
竞聘上岗演讲稿范文
2014/01/10 职场文书
争先创优演讲稿
2014/09/15 职场文书
政风行风整改报告
2014/11/06 职场文书
Canvas如何做个雪花屏版404的实现
2021/09/25 HTML / CSS
css3新特性的应用示例分析
2022/03/16 HTML / CSS