Python很好很强大
作者:我就是个世界
发表于:2008-03-15
来源: [url=http://spadger.blog.com.cn/archives/2008/2680954.shtml]喋喋不休[/url]
[b][color=#FF0000]Python[/color][/b]的命令行是一个很好的计算器,如果用过MATLAB,相信不
会对它的界面感到陌生。
Python中有四种数字,[color=#008000]普通整数[/color],[color=#008000]长整数[/color],[color=#008000]浮点数[/color],[color=#008000]复数[/color]。普通
整数用C语言中的long实现,提供至少32位精度;长整数提供了无限精
度,只要你的内存足够大;浮点数用C语言中的double实现;复数有实
部和虚部,单位虚数用j表示,比如1+2j就是一个复数,Python命令行
可以进行各种数的加减乘除运算,用[color=#FF0000] "from math import *"[/color]导入[color=#008000]mat[/color]h
模块,就可以进行常用的科学函数运算了,math中的数学函数有:[separator]
>>> dir(math)
['__doc__', '__name__', 'acos', 'asin', 'atan', 'atan2',
'ceil', 'cos', 'cosh','e', 'exp', 'fabs', 'floor', 'fmod',
'frexp', 'hypot', 'ldexp', 'log', 'log10','modf', 'pi',
'pow', 'sin', 'sinh', 'sqrt', 'tan', 'tanh']
不知道还有没有增强的Python数学模块。
值得一提的是Python中的长整数提供了无限精度,我知道的别的
语言只有Java类库中的BigInteger类实现了类似的功能,而长整数在
Python中属于内置类型,无疑给计算带来了很大方便,如果HR让你计
算1000的阶乘,可以告诉他用Python计算,至少多了一种答案,不是
么?
举一个更简单的例子,计算2的1000次幂。
Matlab中这样计算:
?2^1000
ans =
1.0715e+301
下面是Python命令行(IDLE)给出的结果
>>> 2**1000
107150860718626732094842504906000181056140481170553360744375
038837035105112493612249319837881569585812759467291755314682
518714528569231404359845775746985748039345677748242309854210
746050623711418779541821530464749835819412673987675591655439
460770629145711964776865421676604298316526243868372056680693
76L
两者相比,后面的比较直观一点。
还有一些内置函数比如hex(),oct()可以实现进制转换,ord(),chr()
可以实现整数和字符的转换,max(),min()求最大最小值等等等等。
当然,Python绝不仅仅是一个计算器,按照Python文档的说明:
Python是一种容易学习的,强大的编程语言。它具有高效的高阶数据
结构和简单有效的面向对象编程方法。Python的优雅的语法和动态类型,
和它的解释执行特性,使得它成为许多领域许多平台上理想的脚本语言
和快速原型开发语言。
同时,Python是开源的,很容易用C/C++进行扩展,MSVC6中调用
Python方法也非常简单直观,将Python嵌入应用应用程序为用户提供
扩展接口也是一个不错的选择,CTerm就提供了类似的功能。
最后,Python发行版附带了非常丰富的学习文档,至少我用的
2.2.3是这样的。
[b][color=#FF0000]Python[/color][/b]的命令行是一个很好的计算器,如果用过MATLAB,相信不
会对它的界面感到陌生。
Python中有四种数字,[color=#008000]普通整数[/color],[color=#008000]长整数[/color],[color=#008000]浮点数[/color],[color=#008000]复数[/color]。普通
整数用C语言中的long实现,提供至少32位精度;长整数提供了无限精
度,只要你的内存足够大;浮点数用C语言中的double实现;复数有实
部和虚部,单位虚数用j表示,比如1+2j就是一个复数,Python命令行
可以进行各种数的加减乘除运算,用[color=#FF0000] "from math import *"[/color]导入[color=#008000]mat[/color]h
模块,就可以进行常用的科学函数运算了,math中的数学函数有:[separator]
>>> dir(math)
['__doc__', '__name__', 'acos', 'asin', 'atan', 'atan2',
'ceil', 'cos', 'cosh','e', 'exp', 'fabs', 'floor', 'fmod',
'frexp', 'hypot', 'ldexp', 'log', 'log10','modf', 'pi',
'pow', 'sin', 'sinh', 'sqrt', 'tan', 'tanh']
不知道还有没有增强的Python数学模块。
值得一提的是Python中的长整数提供了无限精度,我知道的别的
语言只有Java类库中的BigInteger类实现了类似的功能,而长整数在
Python中属于内置类型,无疑给计算带来了很大方便,如果HR让你计
算1000的阶乘,可以告诉他用Python计算,至少多了一种答案,不是
么?
举一个更简单的例子,计算2的1000次幂。
Matlab中这样计算:
?2^1000
ans =
1.0715e+301
下面是Python命令行(IDLE)给出的结果
>>> 2**1000
107150860718626732094842504906000181056140481170553360744375
038837035105112493612249319837881569585812759467291755314682
518714528569231404359845775746985748039345677748242309854210
746050623711418779541821530464749835819412673987675591655439
460770629145711964776865421676604298316526243868372056680693
76L
两者相比,后面的比较直观一点。
还有一些内置函数比如hex(),oct()可以实现进制转换,ord(),chr()
可以实现整数和字符的转换,max(),min()求最大最小值等等等等。
当然,Python绝不仅仅是一个计算器,按照Python文档的说明:
Python是一种容易学习的,强大的编程语言。它具有高效的高阶数据
结构和简单有效的面向对象编程方法。Python的优雅的语法和动态类型,
和它的解释执行特性,使得它成为许多领域许多平台上理想的脚本语言
和快速原型开发语言。
同时,Python是开源的,很容易用C/C++进行扩展,MSVC6中调用
Python方法也非常简单直观,将Python嵌入应用应用程序为用户提供
扩展接口也是一个不错的选择,CTerm就提供了类似的功能。
最后,Python发行版附带了非常丰富的学习文档,至少我用的
2.2.3是这样的。
请发表您的评论