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 相关文章推荐
python 判断自定义对象类型
Mar 21 Python
python实现异步回调机制代码分享
Jan 10 Python
浅谈scrapy 的基本命令介绍
Jun 13 Python
python实现堆和索引堆的代码示例
Mar 19 Python
攻击者是如何将PHP Phar包伪装成图像以绕过文件类型检测的(推荐)
Oct 11 Python
Django 全局的static和templates的使用详解
Jul 19 Python
Python爬虫:将headers请求头字符串转为字典的方法
Aug 21 Python
关于django 1.10 CSRF验证失败的解决方法
Aug 31 Python
Django REST framwork的权限验证实例
Apr 02 Python
Python配置pip国内镜像源的实现
Aug 20 Python
Python中全局变量和局部变量的理解与区别
Feb 07 Python
Python3爬虫RedisDump的安装步骤
Feb 20 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+oracle 分页类
2006/10/09 PHP
用PHP+java实现自动新闻滚动窗口
2006/10/09 PHP
php+mysql实现无限级分类 | 树型显示分类关系
2006/11/19 PHP
PHP CURL获取返回值的方法
2014/05/04 PHP
php实现的click captcha点击验证码类实例
2014/09/23 PHP
php数值转换时间及时间转换数值用法示例
2017/05/18 PHP
PHP 实现人民币小写转换成大写的方法及大小写转换函数
2017/11/17 PHP
PHP中抽象类,接口功能、定义方法示例
2019/02/26 PHP
PHP autoload使用方法及步骤详解
2020/09/05 PHP
json数据的列循环示例
2013/09/06 Javascript
Javascript 按位取反运算符 (~)
2014/02/04 Javascript
jQuery中:enabled选择器用法实例
2015/01/04 Javascript
浅谈JavaScript的Polymer框架中的事件绑定
2015/07/29 Javascript
关于JS变量和作用域详解
2016/07/28 Javascript
zepto与jquery的区别及zepto的不同使用8条小结
2016/07/28 Javascript
整理关于Bootstrap模态弹出框的慕课笔记
2017/03/29 Javascript
Vue2.5 结合 Element UI 之 Table 和 Pagination 组件实现分页功能
2018/01/26 Javascript
vuex直接赋值的三种方法总结
2018/09/16 Javascript
VUE中使用MUI方法
2019/02/12 Javascript
webpack4.x下babel的安装、配置及使用详解
2019/03/07 Javascript
如何使用pm2快速将项目部署到远程服务器
2019/03/12 Javascript
js实现拖拽元素选择和删除
2020/08/25 Javascript
JavaScript实现串行请求的示例代码
2020/09/14 Javascript
python数据类型_元组、字典常用操作方法(介绍)
2017/05/30 Python
Python PyInstaller库基本使用方法分析
2019/12/12 Python
pytest fixtures装饰器的使用和如何控制用例的执行顺序
2021/01/28 Python
Expedia爱尔兰:酒店、机票、租车及廉价假期
2017/01/02 全球购物
请写一个C函数,若处理器是Big_endian的,则返回0;若是Little_endian的,则返回1
2015/07/16 面试题
元旦晚会主持词
2014/03/24 职场文书
《宋庆龄故居的樟树》教学反思
2014/04/07 职场文书
《真想变成大大的荷叶》教学反思
2014/04/14 职场文书
质量承诺书怎么写
2014/05/24 职场文书
2015年妇女工作总结
2015/05/14 职场文书
医院感染管理制度
2015/08/05 职场文书
Python游戏开发实例之graphics实现AI五子棋
2021/11/01 Python
vue实现列表垂直无缝滚动
2022/04/08 Vue.js