Python内有一个非常好用的计算数学表达式的函数eval( ),这个函数可以直接回传字符串内数学表达式的计算结果。
result = eval(expression) # expression是公式运算字符串
程序实例ch4_25.py: 输入公式,本程序可以列出计算结果。
执行结果
由上述执行结果可以发现,在第一个执行结果中输入的是5*9+10字符串,eval( )函数可以处理此字符串的数学表达式,然后将计算结果回传,同时也可以发现即使此数学表达式之间有空字符也可以正常处理。
Windows操作系统有计算器程序,其实当我们使用计算器输入运算公式时,就可以将所输入的公式用字符串存储,然后使用此eval( )方法就可以得到运算结果。在ch4_23.py中我们知道input( )所输入的数据是字符串,当时我们使用int( )将字符串转成整数处理,其实我们也可以使用eval( )配合input( ),直接回传整数数据。
程序实例ch4_26.py: 使用eval( )重新设计ch4_23.py。
执行结果
可以参考ch4_23.py的执行结果。
一个input( )可以读取一个输入字符串,我们可以在eval( )与input( )函数运用多重指定,然后产生一行输入多个数值数据的效果。
程序实例ch4_27.py: 输入3个数字,本程序可以输出平均值,注意输入时各数字间要用“,”隔开。
执行结果