Python 简介

news/2024/7/7 19:23:34

Python - 简介

PythonPython

Python([KK] 英语发音: /'paɪθɑn/, [DJ] 英语发音: /ˈpaiθən/),是一种面向对象、直译式的计算机程序设计语言,也是一种功能强大的通用型语言,已经具有近二十年的发展历史,成熟且稳定。它包含了一组完善而且容易理解的标准库,能够轻松完成很多常见的任务。Python的语法非常简捷和清晰,与其它计算机程序设计语言最大的不同在于,它采用缩进来定义语句块。
Python的官方介绍是:Python是一种简单易学,功能强大的编程语言,它有高效率的高层数据结构,能简单而有效地实现面向对象编程。Python简洁的语法和对动态输入的支持,再加上解释性语言的本质,使得它在大多数平台上的很多领域都是一个理想的脚本语言,特别适用于快速的应用程序开发。

Python支持命令式编程、面向对象程序设计、函数式编程、面向切面编程、泛型编程多种编程范式。与Scheme、Ruby、Perl、Tcl等动态语言一样,Python具备垃圾自动回收功能,能够自动管理内存使用。Python经常被当作脚本语言用于处理系统管理任务和Web编程,然而它也非常适合完成各种高阶任务。Python虚拟机本身几乎可以在所有的操作系统中运行。使用一些诸如py2exe、PyPy、PyInstaller之类的工具可以将Python源代码转换成可以脱离Python解释器执行的程序。
Python的主要参考实现是CPython,它是一个由社区驱动的自由软件。目前由Python软件基金会管理。基于这种语言的相关技术正在飞速的发展,用户数量急剧扩大,相关的资源非常多。

Python - 历史由来

Python 是一种开源的面向对象的脚本语言,它起源于1989年末,当时,CWI(阿姆斯特丹国家数学和计算机科学研究所)的研究员Guido van Rossum需要一种高级脚本编程语言,为其研究小组的Amoeba分布式操作系统执行管理任务。为创建新语言,他从高级数学语言ABC(ALL BASIC CODE)汲取了大量语法,并从系统编程语言Modula-3借鉴了错语处理机制。Van Rossum把这种新的语言命名为Python(大蟒蛇)---来源于BBC当时正在热播的喜剧连续剧“Monty Python”。 

Python 于1991年初公开发行,由于功能强大和采用开源方式发行,Python的发展得很快,用户越来越多,形成了一个强大的社区力量。2001年, Python的核心开发团队移师Digital Creations公司,该公司是Zope(一个用Python编写的web应用服务器)的创始者。大家可到http://www.python.org/上了解最新的Python动态和资料 。

Python - 功能介绍

Python是一种很灵活的语言,能帮你轻松完成编程工作。并可作为一种原型开发语言,加快大型程序的开发速度。 

有多种数据类型:numbers (integers, floating point, complex, and unlimited-length long integers), strings (ASCII 和 Unicode), lists, dictionaries。

PythonPython

Python支持类和多层继承等的面向对象编程技术。 

代码能打包成模块和包,方便管理和发布。 

支持异常处理,能有效捕获和处理程序中发生的错误。 

强大的动态数据类型支持,不同数据类型相加会引发一个异常。 

Python支持如生成器和列表嵌套等高级编程功能。 

自动内存碎片管理,有效利用内存资源。 

强大的类库支持,使编写文件处理、正则表达式,网络连接等程序变得相当容易。 

Python的交互命令行模块能方便地进行小代码调试和学习。 

Python易于扩展,可以通过C或C++编写的模块进行功能扩展。 

Python解析器可作为一个编程接口嵌入一个应用程序中。 

Python可运行在多种计算机平台和操作系统中,如各位unix,linux,windows,MacOS,OS/2等等。 

Python是开源的,可自由免费使用和发布,并且可用于商业用途以获取利润。

应用范围

系统编程,提lass=innerlink>API,能方便进行系统维护和管理。 

图形处理,有PIL、Tkinter等图形库支持,能方便进行图形处理。 

数学处理,NumPy扩展提供大量与许多标准数学库的接口, 

文本处理,python提供的re模块能支持正则表达式,还提供SGML,XML分析模块,许多程序员利用python进行XML程序的开发。 

数据库编程,程序员可通过遵循Python DB-API(数据库应用程序编程接口)规范的模块与Microsoft SQL Server,Oracle,Sybase,DB2,Mysql等数据库通信。python自带有一个Gadfly模块,提供了一个完整的SQL环境。 

网络编程,提供丰富的模块支持sockets编程,能方便快速地开发分布式应用程序。 

作为Web应用的开发语言,支持最新的XML技术。 

多媒体应用,Python的PyOpenGL模块封装了“OpenGL应用程序编程接口”,能进行二维和三维图像处理。PyGame模块可用于编写游戏软件。

Python的特点

简单————Python是一种代表简单主义思想的语言。阅读一个良好的Python程序就感觉像是在读英语一样,尽管这个英语的要求非常严格!Python的这种伪代码本质是它最大的优点之一。它使你能够专注于解决问题而不是去搞明白语言本身。 

易学————就如同你即将看到的一样,Python极其容易上手。前面已经提到了,Python有极其简单的语法。 

免 费、开源————Python是FLOSS(自由/开放源码软件)之一。简单地说,你可以自由地发布这个软件的拷贝、阅读它的源代码、对它做改动、把它的 一部分用于新的自由软件中。FLOSS是基于一个团体分享知识的概念。这是为什么Python如此优秀的原因之一——它是由一群希望看到一个更加优秀的 Python的人创造并经常改进着的。 

高层语言————当你用Python语言编写程序的时候,你无需考虑诸如如何管理你的程序使用的内存一类的底层细节。 

可移植性————由于它的开源本质,Python已经被移植在许多平台上(经过改动使它能够工作在不同平台上)。如果你小心地避免使用依赖于系统的特性,那 么你的所有Python程序无需修改就可以在下述任何平台上面运行。这些平台包括Linux、Windows、FreeBSD、Macintosh、 Solaris、OS/2、Amiga、AROS、AS/400、BeOS、OS/390、z/OS、Palm OS、QNX、VMS、Psion、Acom RISC OS、VxWorks、PlayStation、Sharp Zaurus、Windows CE甚至还有PocketPC和Symbian! 

解释性————这一点需要一些解释。一个用编译性语言比如C或C++写的程序可以从源文件(即C或C++语言)转换到一个你的计算机使用的语言(二进制代码,即0和1)。这个过程通过编译器和不同的标记、选项完成。当你运行你的程序的时候, 连接/转载器软件把你的程序从硬盘复制到内存中并且运行。而Python语言写的程序不需要编译成二进制代码。你可以直接从源代码 运行 程序。在计算机内部,Python解释器把源代码转换成称为字节码的中间形式,然后再把它翻译成计算机使用的机器语言并运行。事实上,由于你不再需要担心 如何编译程序,如何确保连接转载正确的库等等,所有这一切使得使用Python更加简单。由于你只需要把你的Python程序拷贝到另外一台计算机上,它 就可以工作了,这也使得你的Python程序更加易于移植。 

面向对象————Python即支持面向过程的编程也支持面向对象的编程。在 “面向过程”的语言中,程序是由过程或仅仅是可重用代码的函数构建起来的。在“面向对象”的语言中,程序是由数据和功能组合而成的对象构建起来的。与其他 主要的语言如C++和Java相比,Python以一种非常强大又简单的方式实现面向对象编程。 

可扩展性————如果你需要你的一段关键代码运行得更快或者希望某些算法不公开,你可以把你的部分程序用C或C++编写,然后在你的Python程序中使用它们。 

可嵌入性————你可以把Python嵌入你的C/C++程序,从而向你的程序用户提供脚本功能。 

丰富的库————Python标准库确实很庞大。它可以帮助你处理各种工作,包括正则表达式、文档生成、单元测试、线程、数据库、网页浏览器、CGI、 FTP、电子邮件、XML、XML-RPC、HTML、WAV文件、密码系统、GUI(图形用户界面)、Tk和其他与系统有关的操作。记住,只要安装了 Python,所有这些功能都是可用的。这被称作Python的“功能齐全”理念。除了标准库以外,还有许多其他高质量的库,如wxPython、 Twisted和Python图像库等等。 

概括————Python确实是一种十分精彩又强大的语言。它合理地结合了高性能与使得编写程序简单有趣的特色。

Python - python开发工具

IDLE:Python内置IDE (随python安装包提供)
Ulipad:功能较全的自由软件,基于wxPython;作者是中国Python高手limodou,绝对国产
Komodo和Komodo Edit:后者是前者的免费精简版
eclipse + pydev插件:方便调试程序,eclipse的python插件,由于eclipse使用者众多,所以该插件也很受欢迎
PythonWin:ActivePython或pywin32均提供该IDE,仅适用于Windows
SPE(Stani's Python Editor):功能较多的自由软件,基于wxPython
WingIDE:可能是功能最全的IDE,但不是自由软件(教育用户和开源用户可以申请免费key)
Eric:基于PyQt的自由软件,功能强大。全名是:The Eric Python IDE
PyScripter:使用Delphi开发的轻量级的开源Python IDE, 支持Python2.6和3.0。
PyPE:一个开源的跨平台的PythonIDE。
bpython: 类Unix操作系统下使用curses库开发的轻量级的Python解释器。语法提示功能。



转载网址:http://blog.csdn.net/lby978232/article/details/8887650



http://www.niftyadmin.cn/n/3648304.html

相关文章

如何使用Google Chrome DevTools和Visual Studio Code调试JavaScript

介绍 (Introduction) Learning to debug is an essential skill for developers, as it allows them to efficiently fix errors during development. Knowing how to use debugging tools may not always be obvious when working with JavaScript outside of an integrated d…

技术英雄会【二】:问CSDN一个信息过滤器的问题

zhengyun_ustc 20070406刘韧的《4月6日CSDN软件英雄会》中,这句话无意中透露出了CSDN的一个野心:“CSDN这个过滤器,将108人筛选出来,给了这108人抛头露面的机会,这108人同时也成了投资人、创业者、合作者的机会。”4月…

如何使用Traefik 1.7.21作为CentOS 7上Docker容器的反向代理

The author selected Girls Who Code to receive a donation as part of the Write for DOnations program. 作者选择了《编码的女孩》作为Write for DOnations计划的一部分来接受捐赠。 介绍 (Introduction) Docker can be an efficient way to run web applications in prod…

nginx-持续更新

Nginx yum安装 配置Nginx的yum源 [nginx] name=nginx repo baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ gpgcheck=0 enabled=1安装以及重启,检查 yum -y install nginx 默认安装最新版本 启动 关闭 重启 加载 systemctl start/stop/restart/relo…

技术英雄会【三】:社区英雄们的与会感言大赏

zhengyun_ustc 20070406Update:曾老师已经整理了一份非常完整的与会英雄感言清单,敬请收看:CSDN技术英雄会,网友怎么看? 不知道技术英雄大会的各位英雄们的与会心得博文,在哪里能整理出来一个清单&#x…

redis 运维实际经验纪录之一

http://blogread.cn/it/article/1635?fsa redis 改版的项目上线有两个月了,记录一下redis 相关的经验,也给大家一个参照: 我们的redis server是一主一从,使用R710的机器,8核心,24G内存; 每天约插入200万左右的数据,现在库里有3000万条纪录,占用了9G的内存;由于现在每天内存增长…

javascript语法_了解JavaScript中的解构,剩余参数和传播语法

javascript语法The author selected the COVID-19 Relief Fund to receive a donation as part of the Write for DOnations program. 作者选择了COVID-19救济基金来接受捐赠,这是Write for DOnations计划的一部分。 介绍 (Introduction) Many new features for wo…

[Django]ImportError:cannot import name debug问题

[Django]ImportError:cannot import name debug问题VersionDateCreatorDescription1.0.0.12007-1-10郑昀草稿继续阅读之前,我们假设您熟悉以下知识:n Pythonn Djangon Apache浏览着架设在Apache2.2.3(mod_python-3.2.10)上的Dja…