本来只是打算总结一下我自己从C语言转换成python的思维的盲点,
结果发现20号发的博文《培养python思维(1)》居然快要破千了,
那么今天就再发一篇。
这篇结合python123里的一道题目来讲。
题目是这样的,
数值运算
描述
获得用户输入的一个字符串,格式如下:
M OP N
其中,M和N是任何数字,OP代表一种操作,表示为如下四种:+, -, *, /(加减乘除)
根据OP,输出M OP N的运算结果,统一保存小数点后2位。
注意:M和OP、OP和N之间可以存在多个空格,不考虑输入错误情况。
我当初用C语言的思维想了很久(10min+),
C语言代码就不贴了(其实是因为就算想了10min+的代码,都错了,要脸),
而用python思维来做,,
两行,
s = input()
print("{:.2f}".format(eval(s)))
甚至一行,
print("{:.2f}".format(eval(input())))
对,就是一行,
相比起来,python更简单了的核心,在于这个eval()
函数,
eval() 函数用来执行一个字符串表达式,并返回表达式的值。
以下展示了使用 eval() 方法的实例:
>>>x = 7
>>> eval( '3 * x' )
21
>>> eval('pow(2,2)')
4
>>> eval('2 + 2')
4
>>> n=81
>>> eval("n + 4")
85
一句话概括就是,eval函数将括号里的自动转换为它的数据类型。
所以,对C语言中很难解决的问题,简单的调用一个函数,游戏结束。
下一个问题又来了,哪里能知道我要实现的功能是不是已经被封装成函数了呢?
这里也提供几个方法,
一、搜索引擎
无论是百度,Google,还是CSDN,都可以找到很多大佬实现了的功能,
将你想要的功能输入搜索框,可能就会得到你想要的结果。
二、python官方文档
有同学说,我英语不好看不懂,
也不用担心,
python3.7官方中文文档已经出炉了,
英语不好的同学也可以很好的使用官方文档了,
只需要在右上方的搜索框中,输入你想查询的函数或者功能,点击跳转即可得到结果,(当然,速度有点慢,也官网也提供了下载功能,可以将文档下载到本地,离线查阅)
第二篇就此结束,如果有补充或者阅读的人多,就再继续出orz