一行代码写一个计算器,一行代码写计算器,动态语言通常都提供了在运
一行代码写一个计算器,一行代码写计算器,动态语言通常都提供了在运
动态语言通常都提供了在运行时动态执行代码的能力,有些允许直接读入表达式(如Lisp的read),或者提供执行字符串形式的表达式(如JavaScript的eval)。但说白了,就是这类语言提供数据与表达式序列化成文本并从文本中反序列化的能力。
所以有些Lisp厂商希望对eval函数收费,因为此类函数提供了完整的解释器的能力!因此,这一行代码不仅仅是一个计算器,更是一个语言解释器。
欢迎大家在评论里补充你熟悉的语言的解决方案
鼻祖:Common Lisp版 (eval (read))Python 2.X 版 print input()Python 3 版 print(eval(input()))Ruby 版 eval getsBash 版 read e; ((e=$e)); echo $e客户端 JavaScript document.write(eval(prompt('', '')));PHP CLI 版 <?php eval("echo " . fgets(STDIN) . ";");Perl 版 print eval <>#该片段来自于http://byrx.net
相关内容
- 双倍超立方数,双倍,双倍超立方数 是指一个正
- Python 统计日志中每个IP出现的次数,python日志,这脚本可
- python MySQLdb 参数化查询,pythonmysqldb,Python MySQL
- python判断字符串是否包含另一字符串的方法,python字符
- Find the global bounds on the eigenvalues of a tridiagomal matrix in
- python实现马耳可夫链算法,python马耳算法,import rando
- python通过Luhn算法验证信用卡卡号是否有效,pythonluhn,
- 【Python】diao丝娱乐(终极版)-->从百度贴吧下载妹子
- 糗百连连看,连连看,#!/usr/bin/p
- python, shell, golang获取本机IP地址,pythongolang,shell获取I
评论关闭