Python函数及其用法(2)——eval()函数

eval()函数

eval(<字符串>)函数是Python语言中一个十分重要的函数,它能够以Python表达式的方式解析并执行字符串,并将放回结果输出。 eval()官方文档里面给出来的功能解释是:将字符串string对象转化为有效的表达式参与求值运算,返回计算结果

eval(expression,globals=None, locals=None)



# 参数说明:
#  expression是一个参与计算的python表达式
   globals是可选的参数,如果设置属性不为None的话,就必须是dictionary对象了
   locals也是一个可选的对象,如果设置属性不为None的话,可以是任何map对象了

下面给出eval()函数的常见作用:

计算字符串中有效的表达式,并返回结果

>>>eval("1+2")
3

>>>eval(1+2)
3

例题:数值运算 描述: 获得用户输入的一个字符串,格式如下:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬ M OP N‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬ 其中,M和N是任何数字,OP代表一种操作,表示为如下四种:+, -, *, /(加减乘除)‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬ 根据OP,输出M OP N的运算结果,统一保存小数点后2位。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬ 注意:M和OP、OP和N之间可以存在多个空格,不考虑输入错误情况。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬

示例: 输入:10 + 100 输出:110.00 输入:1/20 输出: 0.05

s=input()
a=eval(s)
print("{:.2f}".format(a))

简单来说,就是eval():去掉参数最外侧引号并执行余下语句的函数

>>>eval(" 1+2 ")
1+2
#去掉外部一对双引号后,剩下的‘1+2’被解释为字符串

>>>eval( "1+2" )
"1+2"

如果直接输入eval(“Hello world”)因为eval()函数去掉外部的双引号后,成为变量Hello world,而之前没有定义过该变量,所以会报错。

经验分享 程序员 微信小程序 职场和发展