如何正确进行Python调用

开发 后端
Python调用时在编程领域的占有率一直处于稳步上升之中,Python 具有脚本语言中最丰富和强大的类库,足以支持绝大多数日常应用。

Python语言是一种面向对象的解释性的计算机程序设计语言,也是一种功能强大而完善的通用型语言,已经具有十多年的发展历史,成熟且稳定,下面进行学习Python调用的相关介绍。

这种语言具有非常简捷而清晰的语法特点,适合完成各种高层任务,几乎可以在所有的操作系统中运行。目前,基于这种语言的相关技术正在飞速的发展,用户数量急剧扩大,相关的资源非常多。

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

  1. if age<21: 
  2. print "You cannot buy wine!\n"  
  3. print "But you can buy chewing gum.\n"  
  4. print "this is outside if\n" 

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

是因为他是一个Monty Python的飞行马戏团的爱好者。ABC是由Guido参加设计的一种教学语言。就Guido本人看来,ABC 这种语言非常优美和强大,是专门为非专业程序员设计的。

但是ABC语言并没有成功,究其原因,Guido 认为是非开放造成的。Guido 决心在 Python 中避免这一错误(的确如此,Python 与其它的语言如C、C++和Java结合的非常好)。同时,他还想实现在 ABC 中闪现过但未曾实现的东西。虽然 Python 可能被粗略地分类为"脚本语言(scripting language)", 实际上一些大规模软件开发计划例如 Zope, Mnet 及 BitTorrent. Google也广泛地使用它。

Python 的支持者较喜欢称它为一种高阶动态编程语言 , 原因是"脚本语言" 泛指单用作简单编程任务如 shell scripts ,而Python不能与JavaScript等只能处理简单任务的编程语言相提并论。#t#

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

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

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

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

虽然Python是一个非常成功的语言,但是也有必要明白它的局限性。

1. 运行效率低下目前为止,Python可以说是所有主流脚本语言中速度最慢的。(是这样么?待考.)这与其脚本引擎的设计思路有关。如果你的应用对于速度有着较高的要求,就要考虑Python是否能满足需要。不过这一点可以通过使用C编写关键模块,然后由Python调用的方式加以部分解决。

2. 多线程支持欠佳Python支持多线程,但是其运行效率也不高。

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

4. 无类型作为一种动态语言,随时随地创建和使用变量是Python给我们带来的巨大的便利。但是它也会使得程序不严谨,某些错误只有在运行中才可能出现。所以,使用Python编程的时候,要对类型做到心里有数。这也使得Python调用的IDE工具无法提供便利的自动完成等功能。

责任编辑:chenqingxiang 来源: 电脑商情在线
相关推荐

2010-02-22 14:13:38

安装Python

2010-02-03 14:15:18

Python 开发

2010-02-26 11:15:51

WCF接口方法

2010-02-02 18:20:43

Python编写

2010-02-02 14:11:14

Python 进行编程

2022-09-16 13:26:49

云计算云迁移数据

2022-06-06 06:10:00

密码验证安全

2010-06-04 13:50:24

MySQL存储过程

2021-01-05 05:24:47

Python

2021-04-26 05:33:54

Python异步编程

2010-03-04 11:07:21

Python解释器

2010-01-18 17:14:50

C++语言

2010-05-07 16:50:42

Oracle trun

2010-05-17 17:09:29

Mysql LIMIT

2010-03-22 15:28:19

Cisco交换机配置

2010-01-08 14:41:24

JSON 缓存数据

2010-05-10 12:39:42

Oracle OCR镜

2010-01-19 17:32:03

VB.NET流

2010-02-24 14:41:16

WCF物理地址

2009-12-29 13:46:50

ADO.NET类库
点赞
收藏

51CTO技术栈公众号