`
gq913
  • 浏览: 166995 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Python简介

阅读更多
Python(发音:[ 'paiθ(ə)n; (US) 'paiθɔn ]),是一种面向对象的解释性的计算机程序设计语言,也是一种功能强大而完善的通用型语言,已经具有十多年的发展历史,成熟且稳定。Python 具有脚本语言中最丰富和强大的类库,足以支持绝大多数日常应用。

这种语言具有非常简捷而清晰的语法特点,适合完成各种高层任务,几乎可以在所有的操作系统中运行。

目前,基于这种语言的相关技术正在飞速的发展,用户数量急剧扩大,相关的资源非常多。

Python的Hello World程序

下面是一个在标准输出设备上输出Hello World的简单程序,这种程序通常作为开始学习编程语言时的第一个程序:

#!/usr/bin/env python

print "Hello, world!"

或者:
import sys

sys.stdout.write("Hello, world\n")

Python的历史

Python的创始人为Guido van Rossum。1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,做为 ABC 语言的一种继承。之所以选中 Python(大蟒蛇的意思)作为程序的名字,是因为他是一个Monty Python的飞行马戏团的爱好者。

ABC是由Guido参加设计的一种教学语言。就Guido本人看来,ABC 这种语言非常优美和强大,是专门为非专业程序员设计的。但是ABC语言并没有成功,究其原因,Guido 认为是非开放造成的。Guido 决心在 Python 中避免这一错误(的确如此,Python 与其它的语言如CC++Java结合的非常好)。同时,他还想实现在 ABC 中闪现过但未曾实现的东西。

就这样,Python在Guido手中诞生了。实际上,第一个实现是在Mac机上。可以说,Python是从ABC发展起来,主要受到了Modula-3(另一种相当优美且强大的语言,为小型团体所设计的)的影响。并且结合了Unix shell和C的习惯。

Python在编程语言中的定位

很多大规模软件开发计划例如 Zope, Mnet 及 BitTorrent. Google都在广泛地使用它。

通常认为,Python是一种解释性的语言,但是这种说法是不正确的,实际上,Python在执行时,首先会将.py文件中的源代码编译成Python的byte code(字节码),然后再由Python Virtual Machine来执行这些编译好的byte code。这种机制的基本思想跟Java,.NET是一致的。然而,Python Virtual Machine与Java或.NET的Virtual Machine不同的是,Python的Virtual Machine是一种更高级的Virtual Machine。这里的高级并不是通常意义上的高级,不是说Python的Virtual Machine比Java或.NET的功能更强大,而是说和Java 或.NET相比,Python的Virtual Machine距离真实机器的距离更远。或者可以这么说,Python的Virtual Machine是一种抽象层次更高的Virtual Machine。

基于C的Python编译出的字节码文件,通常是.pyc格式。

Python的特色

可扩充性可说是Python作为一种编程语言的特色。新的内置模块(module)可以用C 或 C++写成。而我们也可为现成的模块加上Python的接口。Python可以使用户避免过分的语法的羁绊而将精力主要集中到所要实现的程序任务上。

Python也被称为是一门清晰的语言。因为它的作者在设计它的时候,总的指导思想是,对于一个特定的问题,只要有一种最好的方法来解决就好了。这在由Tim Peters写的python格言(称为The Zen of Python)里面表述为:

There should be one-- and preferably only one --obvious way to do it.

有意思的是,这正好和Perl语言(另一种功能类似的高级动态语言)的中心思想TMTOWTDI(There's More Than One Way To Do It)完全相反。这似乎是人们常把Perl和Python互相比较的重要原因。

Python语言是一种清晰的语言的另一个意思是,它的作者有意的设计限制性很强的语法,使得不好的编程习惯(例如if语句的下一行不向右缩进)都不能通过编译。这样有意的强制程序员养成良好的编程习惯。其中很重要的一项就是Python的缩进规则。

例如if语句:

if age<21:

    print "You cannot buy wine!\n"

    print "But you can buy chewing gum.\n"

print "this is outside if\n"

一个和其他大多数语言(如C)的区别就是,一个模块的界限,完全是由每行的首字符在这一行的位置来决定的(而C语言是用一对花括号{}来明确的定出模块的边界的,与字符的位置毫无关系)。这一点曾经引起过争议。因为自从C这类的语言诞生后,语言的语法含义与字符的排列方式分离开来,曾经被认为是一种程序语言的进步。不过不可否认的是,通过强制程序员们缩进(包括if,for和函数定义等所有需要使用模块的地方),Python确实使得程序更加清晰和美观。

另外Python在其他部分的设计上也坚持了清晰划一的风格,这使得Python称为一门易读性、易维护性好,并且被大量用户所欢迎的、用途广泛的语言。

Python直接编写的程序段有时运行效率甚至高于用C编写的程序。

Python的局限
虽然Python是一个非常成功的语言,但是也有必要明白它的局限性。
1. 强制缩进
   这也许不应该被称为局限,但是它用缩进来区分语句关系的方式还是给很多初学者带来了困惑。即便是很有经验的Python程序员,也可能陷入陷阱当中。最常见的情况是tab和空格的混用会导致错误,而这是用肉眼无法分别的。

2. 命令行输出问题
   很多时候不能将程序连写成一行,如import sys;for i in sys.path:print i。而perl和awk就无此限制,可以较为方便的在shell下完成简单程序,不需要如Python一样,必须将程序写入一个.py文件。(对很多用户而言这也不算是限制)


Python的前景
  Python在编程领域的占有率一直处于稳步上升之中,根据最新的数据,Python排名第七。前六名分别是Java,C,VB,C++,PHP和Perl. 作为一个很年轻的语言,Python的位置已经相当令人振奋了。随着微软将Python纳入.Net 平台,相信Python的将来会更加强劲发展。Python 很可能会成为.Net平台快速开发的主流语言。欲了解这方面情况,请参考Iron Python的相关信息.
  著名的搜索引擎 Google 也大量使用Python。更加令人吃惊的是,在Nokia智能手机所采用的Symbian操作系统上,Python成为继C++,Java之后的第三个编程语言!可见Python的影响力之巨大。

Python的应用

Zope-应用服务器

Plone-内容管理系统

Django-鼓励快速开发的web framework

Twisted - Python Network Application Framework Python的网络应用程序框架

TurboGears - 另一个Web应用快速开发框架

Bit Torrent - 著名的BT下载工具

2006年的Google编程大赛已经将Python作为参赛语言之一

参考资料:
 1.http://www.python.org/ python.org - Python 的官方网站
 2.http://python.cn/ - Python 中文社区
 3.http://www.codeplex.com/Wiki/View.aspx?ProjectName=IronPython - Python For Dot Net 的网站
分享到:
评论
2 楼 gq913 2008-01-30  
是的,我也是在用一个性能测试工具时才接触的,感觉很新鲜。
1 楼 魔力猫咪 2008-01-30  
不过国内一直比较少见。虽然有些书,但是很少在招聘网站上看到招聘Python的开发人员。

相关推荐

    python简介,python历史介绍

    python简介python简介python简介python简介python简介

    python技术简介-Python简介.pdf

    python技术简介_Python简介 Python 简介 Python是⼀个⾼层次的 结合了解释性、编译性、互动性和⾯向对象的脚本语⾔。 Python的设计具有很强的可读性,相⽐其他语⾔经⽤使⽤英⽂关键字,其他语⾔的⼀些标点符号, 它...

    什么是Python?Python简介.docx

    Python简介全文共7页,当前为第1页。什么是Python?Python简介全文共7页,当前为第1页。什么是Python?Python简介 什么是Python?Python简介全文共7页,当前为第1页。 什么是Python?Python简介全文共7页,当前为第1...

    Python简介.pptx

    大学计算机基础 第2讲 ——Python简介I Python简介全文共42页,当前为第1页。 工科大学生的学习目标outcome Abilities of reading Chinese or English books, summarizing a topics, expressing your own ideas ...

    python简介(1).docx

    python简介(1) python简介(1)全文共13页,当前为第1页。python简介(1)全文共13页,当前为第1页。 python简介(1)全文共13页,当前为第1页。 python简介(1)全文共13页,当前为第1页。 目录 1 Python定义 1 2 Python...

    第1章计算机,编程和Python简介习题及答案--英文

    第1章计算机,编程和Python简介习题及答案--英文

    Python简介.pdf

    Python简介 Python快速⼊门 ⼀. Python 简介: 1.1 Python的出⽣ 我们想要快速学习python就需要知道点python的历史.python是哪年创建的 ?python可以做什么? python的创始⼈为吉多·范罗苏姆(Guido van Rossum)。...

    1.1 Python简介

    1.1 Python简介.mp4

    python简介及基本特点.pdf

    python简介及基本特点 python简介: Python 是⼀个⾼层次的结合了解释性、编译性、互动性和⾯向对象的脚本语⾔。 Python 是⼀种解释型语⾔: 这意味着开发过程中没有了编译这个环节。类似于PHP、Perl、javascript、...

    python简介(1).pdf

    python简介 简介 1. Python简介 简介 Python的创始⼈吉多·范罗苏姆(Guido van Rossum),我们称之为"龟叔", 在1989年的圣诞节,龟叔为了打发时间,开发出了Python这⼀门语⾔(好任性!).在2018年9⽉的TIOBE排⾏榜 上,...

    python学习笔记(一)-python简介.pdf

    python学习笔记(⼀)---python简介 Python简介 1. Python是⼀种计算机程序设计语⾔。 2. python是⼀种什么样的语⾔? ⾸先,不论我们⽤任何语⾔来开发,都是为了让计算机能够⼲活,⽐如下载⼀个MP3,编写⼀个⽂档等...

    Python简介.doc

    Python简介[转] Posted on 2008-01-28 23:18 Eric Yih 阅读(1324) 评论(0) 编辑 收藏 1. 什么是 Python 语言 2. 下载和安装 3. 基础教程 4. Zope 专题 5. 面向对象编程 6. 数据库 7. Windows编程 8. 多媒体 9. 高...

    Python 简介 Python 是一个高层次的结合.rar

    一、python简介 Python是一个高层次的结合解释性、编译性、互动性和面向对象的脚本语言,支持命令式编程、函数式编程和面向对象程序设计,具有广泛的应用领域。Python语言诞生于1990年,由Guido van Rossum设计并...

    python 简介..ppt

    关于python的ppt,里面每页基本都是一个知识点,参照学习还是挺不错的。

    python简介(2).pdf

    python简介 python简介 优点: 提供了⾮常完善的基础代码库,还有⼤量的第三⽅库,都是别⼈开发的,供你直接使⽤的东西。所以python的定位就是"优雅"、"明确"、 "简单",不但⼊门容易,⽽且深⼊学习下去,也是可以...

    Python简介与环境搭建(课件)

    详细介绍Python的发展历史、语言特点、使用场景,Python开发工具下载与环境搭建、编写第一个Python程序、Python集成开发工具介绍,适合于高校教师上课和学生课后复习。

    Python基础入门课程 Python简介介绍 共16页.ppt

    【内容】 1、安装和使用 2、Python概要介绍 3、流程控制

    python教案1--python简介.pdf

    python教案1--python简介.pdfpython教案1--python简介.pdfpython教案1--python简介.pdfpython教案1--python简介.pdfpython教案1--python简介.pdfpython教案1--python简介.pdfpython教案1--python简介.pdfpython教案1...

    计算科学与工程Python简介Introduction to Python for Computational Science and Engineering

    本文总结了许多与使用Python进行计算工程和科学计算有关的核心思想。 重点是介绍一些与数值算法相关的基本Python(编程)概念。

    1.python简介

    《零基础学Python》\PPT 1.python简介

Global site tag (gtag.js) - Google Analytics