![a913e3565722c30ce92fa5fb10d8caeb.png](https://i-blog.csdnimg.cn/blog_migrate/cd38093d9fde1a1025a3ac411fa60900.jpeg)
一、小试牛刀
这道选择题,主要考察了你对字符串、print、eval的熟练度。如果你对这道题还不确定,看到最后,你或许有新的收获。
二、Python中的eval()函数
![c56c34ab958bfb8de7331ddddea4ac3c.png](https://i-blog.csdnimg.cn/blog_migrate/1c2b1bb74590f8a8ad567d86403b7e3c.jpeg)
1、描述
eval() 函数用来执行一个字符串表达式,并返回表达式的值。
2、划重点!!!划重点!!!划重点!!!
- eval()函数传进去的参数必须是字符串或者是对象
- eval()函数可以把string转换为list,tuple,dict类型
- eval()函数去除引号后会检查到它是不是可计算的,如果可计算会将计算的结果打印出来,如果不可计算直接返回结果
- eval()函数中的字符串,如果含有非关键字的字符,会识别为变量,如果没有定义,会报错
三、实例
![4f763c47bcb9f77eb7b9fa059c57253e.png](https://i-blog.csdnimg.cn/blog_migrate/5507f32dd4aa77323c1486b2f367f428.jpeg)
1、eval()函数的参数为字符串
- 错误示范:
![4e89b94fbbaeea72300a643969b3215c.png](https://i-blog.csdnimg.cn/blog_migrate/75ea264a6eb83c400a3db2b76289de22.jpeg)
总结:eval(s)函数,如果s是数字、列表、元组、字典,程序会报错。
- 正确示范:
![b43ec06cb6b3ee79bfdb2d32dfe3f3e3.png](https://i-blog.csdnimg.cn/blog_migrate/69ce3993cf88c4d289e09f9255909845.jpeg)
- 输出结果:
![6bdc69a51dc171585c8a7ac68453e918.png](https://i-blog.csdnimg.cn/blog_migrate/f5bec94da2fba7b42b6099367d2acf3c.jpeg)
2、eval()函数结合input()和str()函数一起使用
- 代码:
![2423a1a9dfd8992dc88e860311fa04df.png](https://i-blog.csdnimg.cn/blog_migrate/78b13a8712ee2ee7c44ae5fad27aefc6.jpeg)
3、eval()函数的参数是字符串表达式
- 错误示范:
![065bdac7ee61f092aa05f953dd084a03.png](https://i-blog.csdnimg.cn/blog_migrate/631935e5fffa60d0425eef22382e3c2a.jpeg)
注意:字符表达式的前提是字符串,如果不是,则会报错
- 正确用法:
![d4b3e331544ce8f41bce3fcc8d46d822.png](https://i-blog.csdnimg.cn/blog_migrate/9517afced64fba516d594f7d53b8e71d.jpeg)
- 输出结果:
![9a6c14f54f411dc4182e6b666daa8634.png](https://i-blog.csdnimg.cn/blog_migrate/c644fe635daae71278b6661c95fc784f.jpeg)
4、eval()函数的字符串非数字类型
- 错误示范:
![d31e6822970a155baafd3154973ff3ae.png](https://i-blog.csdnimg.cn/blog_migrate/7f9804f267026eb839c6d61faf5a4393.jpeg)
注意:如果字符串中的字符含有非数字,在没有定义或者内置函数的前提下,会报错
- 正确用法:
![9218afccbbc6124d3a737f81ce54d104.png](https://i-blog.csdnimg.cn/blog_migrate/6f89aca0636e32af448a2c96ac521075.jpeg)
四、上一茬
>>>《Python基础找茬系列17--全局变量与局部变量,你肯定踩过的坑》
五、火眼金睛
如果你在python学习过程中,感觉枯燥无味,不妨像玩游戏一样去寻找python中异同知识点。
如果你也发现了一些茬,不妨留言,让大家一起找一找。
如果你觉得小编找茬对你有帮助,点个赞,小编会带着你的激励持续更新下去。
![15a3162ae1742e0950e5d858e1375a70.png](https://i-blog.csdnimg.cn/blog_migrate/d1e5fded6a40090504545be85c3de30b.jpeg)