[编程题]四则运算

四则运算

http://www.nowcoder.com/questionTerminal/9999764a61484d819056f807d2a91f1e

py不识别{}和[],替换为();
eval最后返回带有小数点要加个int;
replace返回新的字符串;
最后看了下java代码,只想说py大法好。。。。。

a=input()
a=a.replace("{","(")
a=a.replace("}",")")
a=a.replace("[","(")
a=a.replace("]",")")
print(int(eval(a)))
全部评论
考官:请编写代码实现一个py解释器
4
送花
回复
分享
发布于 2020-11-17 16:41
a=input() a=a.replace("{","(") a=a.replace("}",")") a=a.replace("[","(") a=a.replace("]",")") print(int(eval(a)))
1
送花
回复
分享
发布于 2020-02-02 22:08
滴滴
校招火热招聘中
官网直投
哈哈,我用的是JavaScript的eval()。机试快速得出结果是第一要务。
1
送花
回复
分享
发布于 2021-01-15 09:13
java用ScriptEngine也可以很快速的实现 s = s.replace('[','('); s = s.replace('{','('); s = s.replace(']',')'); s = s.replace('}',')'); ScriptEngine se = new ScriptEngineManager().getEngineByName("JavaScript"); result = (Double) se.eval(s);
1
送花
回复
分享
发布于 2021-01-27 11:33
你这样计算5/2结果就是2而不是2.5了,根本不是四则运算
点赞
送花
回复
分享
发布于 2020-08-23 16:48
这楼主画蛇添足
点赞
送花
回复
分享
发布于 2021-06-12 08:35

相关推荐

37 8 评论
分享
牛客网
牛客企业服务