对于许多开发人员来说,Python脚本语言应该都有所耳闻,然而对于Python脚本语言的评论也是各式各样的,有其甚者说Python脚本语言将在一定时间内消失在开发这个大家庭中。
在此我并不是要去评论别人的对于错,我只是站在一个比较客观的角度来谈谈Python这一计算机语言。Python是一种解释性语言,而且属于OpenSource的项目。但是,你可以将其用于商业用途。
并且可以将其放在商业的产品光盘中一同发售。当然,人们也可以从www.Python.org或者OpenSource的网站上免费获得其安装程序或者源代码。Python最初是在苹果计算机上被编译成功的,但现在他已经可以运行于世界上主流的操作平台之上了。他不只有Windows版本的。
同时还有Linux,Unix等很多平台上都可以使用他,在RedHat9中,还将其作为开发必须的一项语言被安装。对于Python的代码类型,基本可分为3种,分别是字节代码,二进制代码优化代码。
他们的后缀名分别是.py .pyc .pyo 这些代码都可以直接运行。无需做任何的编译或者连接。而在使用这些类型的代码上,Python会更具不同的情况选择不同的类型。如下:
- [thread2.py]
- import thread
- import time
- input = None
- lock = thread.allocate_lock()
- def threadProc():
- while True:
- print 'sub thread id : ', thread.get_ident()
- print 'sub thread %d wait lock...' % thread.get_ident()
- lock.acquire()
- print 'sub thread %d get lock...' % thread.get_ident()
- print 'sub thread %d receive input : %s' % (thread.get_ident(), input)
- print 'sub thread %d release lock...' % thread.get_ident()
- lock.release()
- time.sleep(1)
- thread.start_new_thread(threadProc, ())
- print 'main thread id : ', thread.get_ident()
- while True:
- print 'main thread %d wait lock...' % thread.get_ident()
- lock.acquire()
- print 'main thread %d get lock...' % thread.get_ident()
- input = raw_input()
- print 'main thread %d release lock...' % thread.get_ident()
- lock.release()
- time.sleep(1)
在运行时,Python脚本语言会检测在main.py的当前目录中有没有MyPython.pyc文件,如果没有那么导入MyPython.py并且同时生成MyPython.pyc为下次更快的导入做好准备。这样,可以减少不少初始化的时间。而且,这一切无需用户介入,Python脚本语言会自动完成。对于其语法,不的不承认,他的语法是众多其他语言中相对简单的,他排除了许多繁琐的思索。如下:
- #!/usr/bin/python
- a=2003
- print a
- a='Hello python'
- print a
- a=[2,0,0,3]
- print a[0]
- 以上的代码可以被正常运行,其结果如下:
- 2003
- Hello python
- 2
如果是C++至少需要声明3组变量。而对于Python脚本语言一个变量就可以了。不但如此,Python的对代码块的管理也有他的独特之处。下面是Python与C++对于同样一个While循环的比较。