特点

  • 1.可读性强:

可读性远比听上去重要的多得多.一个程序会被反复的修改,可读性强意味着让你可以在更短的时间内学习和记忆,直接提高生产率.

  • 2.简洁,简洁,简洁:

研究证明,程序员每天可编写的有效代码数是有限的.完成同样功能只用一半的代码,其实就是提高了一杯的生产率.Python是由C语言开发,但是不再有C语言中指针等复杂的数据类型,Python的简洁性让开发难度和代码幅度大幅度江都,开发任务大大简化.程序员再也不需要关注复杂的语法,而是关注任务本身.

简洁的体现:下面的代码可以绘制出右侧的内容

import turtle

t = turtle.Pen()
for x in range(360):
t.forward(x)
t.left(59)

  • 3.面向对象
  • 4.免费和开源
  • 5.可移植性和跨平台

Python会被编译成与操作系统相关的二级制代码,然后在解释执行.这种方式和Java类似,大大提高了执行速度.也实现了跨平台.

  • 6.丰富的库(丰富的标准库,各种多样的拓展库)
  • 7.可扩展性.可以嵌入到C和C++. 胶水式语言.

应用范围

  • 1.科学计算
  • 2.人工智能
  • 3.WEB服务端和大型网站后端.
  • YouTube.gmail等应用基于Python开发.
  • 4.GUI开发(图形用户界面开发)
  • 5.游戏开发
  • 6.移动设备
  • 7.嵌入式开发
  • 8.系统运维
  • 9.大数据,云计算

什么时候不应该用Python

  • Python是解释执行.性能较低

因此,一些影响性能的功能可以用C/C++/Java/Go(GO是一种新语言,写起来像Python,性能像C)去开发.不过,不用单心Python解释器会越来越快

版本和兼容问题解决方案

目前主要是两个版本:Python2和Python3

  • Python2:2000年10月发布.最新版本是2.7,不在更新.预计2020年推出历史舞台
  • Python3:2008年发布.Python3有了较大的提升,无法与Python2兼容

兼容性问题解决:

  • Python3有很多新特性也被移植到了python2.7,作为过渡.如果程序可以在2.7运行,可以同一个名为2to3(Python自带的一个脚本)的转换工具无缝迁移到Python3

Python解释器

Python程序的执行依赖于Python解释器.常用的python解释器有:

  • 1.CPython

使用C语言,实现的解释器,最常用的解释器.通常说的解释器指的就是它.

  • 2.Jython

使用Java语言实现的解释器.jython可以直接调用Java类库,适合在Java平台上开发

  • 3.IronPython

.NET平台上使用的解释器.可直接调用.NET平台的类,适合.NET平台上开发

  • 4.PyPy

使用Python语言实现的解释器

Python,初次见面请多指教的更多相关文章

  1. 端午节佳节从CSDN博客搬家来这,请多多指教

    端午节佳节从CSDN博客搬家来博客园,请多多指教

  2. TypeScript,初次见面,请多指教 ?

    为什么用 TS ? 说实话,最开始并没有想把 TS 用到实际项目中来,一来是感觉"类型"会限制 JS 的优势(好吧,就是浪写浪惯了):二来听闻 TS + Redux 的酸爽滋味,有 ...

  3. Python中请使用isinstance()判断变量类型

    一.isinstance() 在Python中可以使用type()与isinstance()这两个函数判断对象类型,而isinstance()函数的使用上比type更加方便. # coding=utf ...

  4. 初次接触nodejs,请多指教。

    一  安装nodejs 1.下载node.js.在http://nodejs.org/download/下载最新版的node.exe文件,我下载时是v0.10.33.下载完成后,在F盘新建nodejs ...

  5. 仿照jQuery写一个关于选择器的框架(带了注释,请多多指教~)

    var select = (function () { //这是一个异常与捕获的代码,它表示的意思是:如果push方法出现了错误那么就需要重写push方法 try { //这边是自己模拟一个场景,来使 ...

  6. 打开手机摄像头扫描二维码或条形码全部操作(代码写的不好,请提出指教,共同进步,我只是一个Android的小白)

    (1)下载二维码的库源码 链接:http://pan.baidu.com/s/1pKQyw2n 密码:r5bv 下载完成后打开可以看到 libzxing 的文件夹,最后添加进 Android  Stu ...

  7. [Python]Codecombat攻略之远边的森林Forest(1-40关)

    首页:https://cn.codecombat.com/play语言:Python 第二界面:远边的森林Forest(40关)时间:2-6小时内容:if/else.关系操作符.对象属性.处理输入网页 ...

  8. [Python]Codecombat攻略之地牢Kithgard(1-22关)

    首页:https://cn.codecombat.com/play语言:Python 第一界面:地牢 Kithgard(22关) 时间:1-3小时 内容:语法.方法.参数.字符串.循环.变量等 网页: ...

  9. [Python] Codecombat 攻略 Sarven 沙漠 (1-43关)截止至30关

    首页:https://cn.codecombat.com/play语言:Python 第二界面:Sarven沙漠(43关)时间:4-11小时内容:算术运算,计数器,while循环,break(跳出循环 ...

随机推荐

  1. linux 下安装 jdk1.7

    1.官网 下载jdk7版本 地址: http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-jav ...

  2. Flutter——Padding组件

    在 html 中常见的布局标签都有 padding 属性,但是 Flutter 中很多 Widget 是没有 padding 属性.这个时候我们可以用 Padding 组件处理容器与子元素直接的间距. ...

  3. es中的相关知识一(基本知识和id的定义)

    一.es中文档的元数据包括: 1._index: 索引(index)类似于关系型数据库里的数据库(database),事实上,我们的数据被存储和索引在分片(shards)中,索引知识把一个或多个分片分 ...

  4. 求 无向图的割点和桥,Tarjan模板

    /* 求 无向图的割点和桥 可以找出割点和桥,求删掉每个点后增加的连通块. 需要注意重边的处理,可以先用矩阵存,再转邻接表,或者进行判重 */ const int MAXN = 10010; cons ...

  5. 类的命名空间与卸载详解及jvisualvm使用

    类的命名空间详解: 在上一次[https://www.cnblogs.com/webor2006/p/9108301.html]最后实验中有一个违背咱们理解的,这里回顾一下: 也就是说,"某 ...

  6. P2402 奶牛隐藏 二分+网络流

    floyd搞出两点间最短距离 二分判答案 // luogu-judger-enable-o2 #include<bits/stdc++.h> using namespace std; ty ...

  7. UESTC 2016 Summer Training #1 J - Objects Panel (A) 按条件遍历树

    #include <iostream> #include <cstdio> #include <vector> using namespace std; typed ...

  8. string::crbegin string::crend

    const_reverse_iterator crbegin() const noexcept;功能:crbegin是最后一个字符,crend第一个字符的前一个.迭代器向左移动是“+”,向右移动是“- ...

  9. setup elk with docker-compose

    version: '2' services: elasticsearch: image: docker.calix.local:18080/docker-elasticsearch:6.2.2-1 c ...

  10. Serializable(转)

    最近在阅读JDK源码中的集合,看到很多集合类实现了Serializable接口,Cloneable接口.在阅读了很多关于Serializable接口的博客后,浅谈下我对Serializable接口的理 ...