Python是一个非常好用的程序语言,开发的速度非常快。Python的设计哲学是“优雅”、“明确”、“简单”。因此,Perl语言中“总是有多种方法来做同一件事”的理念在Python开发者中通常是难以忍受的。Python开发者的哲学是“用一种方法,最好是只有一种方法来做一件事”。在设计Python语言时,如果面临多种选择,Python开发者一般会拒绝花俏的语法,而选择明确的没有或者很少有歧义的语法。由于这种设计观念的差异,Python源代码通常被认为比Perl具备更好的可读性,并且能够支撑大规模的软件开发。这些准则被称为Python格言。在Python解释器内运行import this可以获得完整的列表。

Python开发人员尽量避开不成熟或者不重要的优化。一些针对非重要部位的加快运行速度的补丁通常不会被合并到Python内。所以很多人认为Python很慢。不过,根据二八定律,大多数程序对速度要求不高。在某些对运行速度要求很高的情况,Python设计师倾向于使用JIT技术,或者用使用C/C++语言改写这部分程序。可用的JIT技术是PyPy。

Python是完全面向对象的语言。函数、模块、数字、字符串都是对象。并且完全支持继承、重载、派生、多继承,有益于增强源代码的复用性。Python支持重载运算符和动态类型。相对于Lisp这种传统的函数式编程语言,Python对函数式设计只提供了有限的支持。有两个标准库(functools, itertools)提供了Haskell和Standard ML中久经考验的函数式程序设计工具。

虽然Python可能被粗略地分类为“脚本语言”(script language),但实际上一些大规模软件开发计划例如Zope、Mnet及BitTorrent,Google也广泛地使用它。Python的支持者较喜欢称它为一种高级动态编程语言,原因是“脚本语言”泛指仅作简单程序设计任务的语言,如shellscript、VBScript等只能处理简单任务的编程语言,并不能与Python相提并论。

Python本身被设计为可扩充的。并非所有的特性和功能都集成到语言核心。Python提供了丰富的API和工具,以便程序员能够轻松地使用C语言、C++、Cython来编写扩充模块。Python编译器本身也可以被集成到其它需要脚本语言的程序内。因此,很多人还把Python作为一种“胶水语言”(glue language)使用。

使用Python将其他语言编写的程序进行集成和封装。在Google内部的很多项目,例如Google Engine使用C++编写性能要求极高的部分,然后用Python或Java/Go调用相应的模块。《Python技术手册》的作者马特利(Alex Martelli)说:“这很难讲,不过,2004 年,Python 已在Google 内部使用,Google 召募许多 Python 高手,但在这之前就已决定使用Python,他们的目的是 Python where we can, C++ where we must,在操控硬件的场合使用 C++,在快速开发时候使用Python。”

python用什么编译器

推荐Python集成开发工具

学习Python建议用以下开发工具,请根据自己的喜好,选择一种。

分2种

第一种是编辑器

1、vim

2、atom

3、sublime text

4、Visual Studio Code

第二种是python集成开发环境(ide)

1、pycharm python集成开发环境, 有免费版。

2、wingide python集成开发环境, 有免费版。

3、liclipse python集成开发环境,免费。

打开APP精彩内容

点击阅读全文

python用什么编译器较好-python用什么编译器相关推荐

  1. 写python程序用什么软件最好-Python必学之编译器用哪个好?你用错了吧!

    CPython 当我们从Python官方网站下载并安装好Python 3.x后,我们就直接获得了一个官方版本的解释器:CPython.这个解释器是用C语言开发的,所以叫CPython.在命令行下运行p ...

  2. python编辑器安卓手机版_python编译器安卓下载-python编译器手机版下载v1.8.0 安卓版-2265安卓网...

    python编译器手机版是一款超棒的编程工具.专业的编程内容设计,多种多样的语言选择,完美的脚本,强大的功能,没有任何广告,快速的编写,还有快速提示,自由复制等等! python编译器安卓软件介绍 - ...

  3. linux中python编译器_linux下python编译器

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! linux下默认系统自带python2.6的版本,这个版本被系统很多程序所依赖, ...

  4. python学习-知识点回顾(Python3的安装,编译器、一些关键知识点、数据类型、数据类型转换、运算符优先级)

    文章目录 说明 python特点 Python3下载 PyCharm 标识符 python保留字 行与缩进 基本数据类型 Python数据类型转换 Python运算符优先级 说明 首先说明:本篇博文知 ...

  5. python基础主要内容_python基础—python的介绍

    编译器是把源程序的每一条语句都编译成机器语言,并保存成二进制文件,这样运行时计算机可以直接以机器语言来运行此程序,速度很快; 而解释器则是只在执行程序时,才一条一条的解释成机器语言给计算机来执行,所以 ...

  6. python大牛 关东升_《Python从小白到大牛》第4章 Python语法基础

    本章主要为大家介绍Python的一些语法,其中包括标识符.关键字.常量.变量.表达式.语句.注释.模块和包等内容. 标识符和关键字 任何一种计算机语言都离不开标识符和关键字,因此下面将详细介绍Pyth ...

  7. python 异常处理模块_我的python学习之路-异常处理和模块导入

    本节摘要 一.模块导入 二.导入包 三.异常处理 一.模块导入 文件就是一个模块,文件夹就是一个包 文件夹里面可以有很多文件,就相当于包中有好多的模块. 1.import 引入 模块不会被重复导入,引 ...

  8. Python全栈开发,Day1 - Python基础1

    本章内容 Python是什么? Python的发展史 Python2与3的区别 Python的语言类型 Python的优缺点 一.Python是什么? Python的创始人是吉多·范罗苏姆(Guido ...

  9. python源码学习_【Python学习】Python源码阅读(一)

    最近想读读Python源码,任何东西学习方法基本都是一样的,先从总体框架进行了解,再从自己侧重的方面逐步深入. 1. Python总体架构 左边是Python提供的大量的模块.库以及用户自定义的模块. ...

最新文章

  1. Python基础08-数据类型:集合set
  2. Module not found: Can‘t resolve ‘@babel/runtime/helpers/esm/extends‘ in ‘C:\Users\wdg\Desktop\Ant-De
  3. wpf prism IRegionManager 和IRegionViewRegistry
  4. ZLMediaKit_wiki
  5. 将Glassfish 3连接到外部ActiveMQ 5代理
  6. Linux加密框架 crypto算法模板 以及CBC算法模板实例
  7. java产生字符函数_java生成字符串md5函数类(javaSE)
  8. 鸿蒙分布式体验,一张图看懂鸿蒙OS 2.0 分布式能力升级构筑全场景体验
  9. GitHub 热点速览:不可思议的浏览器 Browser-2020 周涨 Star 超 3 千
  10. Dynamic Entity Representation with Max-pooling Improves Machine
  11. leetcode最大矩形_柱状图中的最大矩形
  12. Linux下C语言的调试器 Gdb
  13. java Process在windows的使用汇总(转)
  14. java 组件更新,java – 我可以批量处理一些Swing组件更新,以便重绘全部一次完成吗?...
  15. bxl类型封装转换为AD库封装
  16. 公式推导 圆面积公式 圆周长公式
  17. 【Windows批处理】批处理压缩包内加密pdf文件解密
  18. CTF-网络信息安全攻防学习平台(脚本关)
  19. IOS目标检测(翻译)
  20. 为什么有很深的windows基础还是不能动摇linux半步

热门文章

  1. Koadic的安装和使用---http c2远控工具
  2. linux 内存不足时候 应该及时回收page cache
  3. Lambda方法推导(method references)
  4. P2340 奶牛会展(状压dp)
  5. php对mongo操作问题
  6. oracle 查看锁表进程和解锁
  7. Oracle DB 服务器 系统时间修改问题 与 SCN 关系的深入研究
  8. 安卓开发笔记(二十七):实现轮播文字消息
  9. 创建型模式-工厂模式
  10. 【css】如何实现响应式布局