python学习笔记之调用eval函数出现invalid syntax错误问题


Posted in Python onOctober 18, 2015

pytho的使用和分发完全是免费的,它是一种面向对象的语言,它的。它的类模块支持多态,操作符重载和多重继承等高级概念,并且以python特有的简洁的语法和类型,OOP十分易于使用。python内置了众多预编译并可移植的功能模块,这些功能模块叫做标准库(standard library)。python可以调用C和C++的库,可以被C和C++的程序调用,可以与java组件集成,可以和COM和.Net等框架进行通信,并且可以通过SOAP、XML-RPC和CORBA等接口与网络进行交互,所以,python绝不仅仅是一个独立的工具。

本来是想打算使用eval函数对变量进行赋值的,没想到出现了invalid syntax错误。源代码如下

In [2]: eval('a = 1')
 File "<string>", line 1
 a = 1
  ^
SyntaxError: invalid syntax

百度没百度到结果,最后在stackoverflow上找到了好的答案.

作者的意思是,eval函数只负责对表达式进行处理,并没有赋值的功能,也就是说,eval函数只负责对你的输入进行输出,True还是False又或者是什么东西。但它本身是没有影响当前代码环境的能力的。如果我们想用来进行赋值,那么应该使用exec()函数。看代码:

In [3]: exec('a = 1')
In [4]: a
Out[4]: 1

问题的解决方案已经供出了,那么我们现在再看看官方文档对这两个函数怎么说。

eval(expression, global=None, local=None)

      参数是字符串和可选的global和local。global应当为一个字典文件,local应为一个映射对象。

expression参数将被处理为一个python的表达式(严格来说,是一串条件语句),global和local参数将被用来当做全局和局部的命名空间。

exec(object[,global,[locals])

这个函数能够为python提供动态的代码执行功能。

Python 相关文章推荐
在Python中操作字典之setdefault()方法的使用
May 21 Python
python 读取txt中每行数据,并且保存到excel中的实例
Apr 29 Python
python tornado微信开发入门代码
Aug 24 Python
Python实现定期检查源目录与备份目录的差异并进行备份功能示例
Feb 27 Python
Python面向对象程序设计类的封装与继承用法示例
Apr 12 Python
Python Pandas 获取列匹配特定值的行的索引问题
Jul 01 Python
利用python实现汉字转拼音的2种方法
Aug 12 Python
Python requests.post方法中data与json参数区别详解
Apr 30 Python
python能在浏览器能运行吗
Jun 17 Python
python 调用API接口 获取和解析 Json数据
Sep 28 Python
Python用摘要算法生成token及检验token的示例代码
Dec 01 Python
使用python绘制横竖条形图
Apr 21 Python
在arcgis使用python脚本进行字段计算时是如何解决中文问题的
Oct 18 #Python
详解使用Python处理文件目录的相关方法
Oct 16 #Python
详解在Python程序中自定义异常的方法
Oct 16 #Python
Python编程中的文件操作攻略
Oct 16 #Python
详解Python编程中包的概念与管理
Oct 16 #Python
解读Python编程中的命名空间与作用域
Oct 16 #Python
Python中的模块导入和读取键盘输入的方法
Oct 16 #Python
You might like
基于PHP+Ajax实现表单验证的详解
2013/06/25 PHP
完善CodeIgniter在IDE中代码提示功能的方法
2014/07/19 PHP
php实现文件管理与基础功能操作
2017/03/21 PHP
JS实现侧悬浮浮动实例代码
2013/11/29 Javascript
JQUERY简单按钮轮换选中效果实现方法
2015/05/07 Javascript
JavaScript代码实现禁止右键、禁选择、禁粘贴、禁shift、禁ctrl、禁alt
2015/11/17 Javascript
jQuery animate和CSS3相结合实现缓动追逐效果附源码下载
2016/04/18 Javascript
一个简单不报错的summernote 图片上传案例
2016/07/11 Javascript
js实现文字截断功能
2016/09/14 Javascript
jquery.zclip轻量级复制失效问题
2017/01/08 Javascript
微信小程序后端无法保持session的原因及解决办法问题
2020/03/20 Javascript
使用JavaScript通过前端发送电子邮件
2020/05/22 Javascript
[02:49]DOTA2完美大师赛首日观众采访
2017/11/23 DOTA
[40:53]完美世界DOTA2联赛PWL S3 Magma vs DLG 第二场 12.18
2020/12/20 DOTA
[01:00:17]DOTA2-DPC中国联赛 正赛 SAG vs Dynasty BO3 第二场 1月25日
2021/03/11 DOTA
Python的Django框架中自定义模版标签的示例
2015/07/20 Python
Python3利用Dlib19.7实现摄像头人脸识别的方法
2018/05/11 Python
matplotlib 输出保存指定尺寸的图片方法
2018/05/24 Python
python3 爬取图片的实例代码
2018/11/06 Python
python 并发下载器实现方法示例
2019/11/22 Python
python如何删除列为空的行
2020/07/17 Python
jupyter notebook 写代码自动补全的实现
2020/11/02 Python
美国LOGO设计公司:The Logo Company
2018/07/16 全球购物
Flesh Beauty官网:露华浓集团旗下彩妆品牌
2021/02/15 全球购物
Aosom西班牙:家具在线商店
2020/06/11 全球购物
机械工程师的岗位职责
2013/11/17 职场文书
公司清洁工岗位职责
2013/12/14 职场文书
现金出纳岗位职责
2014/03/15 职场文书
团日活动总结模板
2014/06/25 职场文书
银行求职自荐信范文
2015/03/04 职场文书
学校后勤工作总结2015
2015/05/15 职场文书
毕业证明模板
2015/06/19 职场文书
中学生运动会广播稿
2015/08/19 职场文书
创业计划书之烤红薯
2019/09/26 职场文书
Java 实现限流器处理Rest接口请求详解流程
2021/11/02 Java/Android
Android 界面一键变灰 深色主题工具类
2022/04/28 Java/Android