Python3学习笔记(一)简介 、 安装 、 解释器
python(一)简介、安装 、 python解释器介绍
一、 简介
- python提供了非常完善的基础代码库 , 覆盖了网络 、 文件 、 GUI 、 数据库 、 文本等大量的内容 , 被称之为“内置电池(batteris include)” 。
- 很多大型网站都是python开发的 , 比如国内的豆瓣和NASA(美国航空航天局)都大量的使用python 。
- python 的定位就是“优雅” 、 “明确” 、 “简单” , 所以python程序看上去简单易懂 。 但是深入学习也可以写很多非常复杂的程序 。
- python 优点:
- 简单优雅, 容易看懂 , 代码量少 。
- 适合开发网络应用 、 日常小工具 、 和系统管理员使用的脚本任务等 。
- 可以把其他语言开发的程序包装起来 , 方便使用 。
- python 缺点:
- 运行速度慢 。 因为python是解释型语言 , 代码在执行是会在cpu中一句一句的翻译后实在执行 , 翻译过程非常耗时 。而像C 、 java这类的语言是先编译 , 后再cpu中执行的非常快 。
- 代码不能加密 , 发布python应用是 , 只能发布源代码 。 而编译型的语言发布时可以直接发布编译后的代码 , 要从机器码反推出C代码几乎是不可能的 。 (大家那么忙 , 谁有闲工夫破解你的烂代码 , 啊哈哈哈)
二、 安装
- python 语言是跨平台的 , 可以运行在Windows 、 mac 、 Linux系统上 。 这得益于python的解释器 , 只要在系统中安装了python的解释器, 就可以运行python代码 。
- windows上安装python
- 根据你的系统下载对应的python特别注意要勾上add python 3.6 to PATH (这样你就可以不用手动配置环境变量了), 然后点击install now即可完成安装
- 运行python解释器
- 安装成功之后 , 打开命令提示符窗口 , 敲入python之后 ,会出现两种情况 。
- 情况一: 安装成功
- 情况二: 得到一个错误: python不是内部或外部命令 , 也不是可运行的程序或批处理文件 。 只是因为windows会根据python的环境变量去寻找python.exe 如果没找到 , 就会报错 。 这时需要重新手动配置环境变量 , 如果不会配置环境变量 , 建议重新执行安装程序 , 这次一定要记住勾选 add python 3.6 to PATH
三、 python解释器
- 由于整个python语言从规范到解释器都是开源的 , 所以理论上 , 只要水平够高 , 任何人都可以编写python解释器来执行python代码(难度很大) , 事实上 , 确实有很多python解释器 。
- CPython : 当我们从python官网下载并安装好python之后 , 我们就直接得到了一个官方版本的解释器(CPython) , 这个解释器是C语言开发的 。
- IPython : 是基于CPython之上的一个交互式解释器 , 也就是说 , IPython只是 在交互方式上有所增强 , 但是执行python代码的功能和Cpython是完全一样的 。
- PYPY : PyPy是另一个解释器 , 他的目标是执行速度 , PyPy采用JIT技术 , 对python代码进行动态编译(注意不是解释) , 所以可以显著的提高代码的执行速度 。 绝大部分Python代码都是可以在PyPy解释下运行的 , 但是PyPy和CPython有一些不同 , 这就导致同样的Python代码在两种解释器下运行结果不同 。 如果你要使用PyPy解释器 , 那就必须要了解PyPy解释器与CPython的不同点 。
- Jython : Jython是运行在java平台下的Python解释器 , 可以直接把Python代码编译成java字节码执行 。
- IronPython : IronPython与Jython类似 , 只不过IronPython是运行在微软.Net平台上的Python解释器 , 可以直接把Python代码编译成.Net字节码文件 。
- 解释器总结: Python的解释器很多 , 但是用最广泛的还是CPython , 如果想要与Java平台或.Net平台交互 , 最好的办法不是使用Jython或IronPython , 而是通过网络调用来交互 , 来确保各程序之间的独立性 。
补充:
- PyPy解释器使用的JIT技术 :https://en.wikipedia.org/wiki/Just-in-time_compilation
- PyPy和CPython的不同点 :http://pypy.readthedocs.io/en/latest/cpython_differences.html
- 扩展模块
- 垃圾收集策略相关的差异
- 内置类型的子类
- 突变一杯用作字典键的对象类
- 忽略了例外
- 原始值得对象标识is和id
- C-API的差异
- 性能差异
- 其他
Python3学习笔记(一)简介 、 安装 、 解释器相关推荐
- Python3学习笔记01-环境安装和运行环境
最近在学习Python3,想写一些自己的学习笔记.方便自己以后看,主要学习的资料来自菜鸟教程的Python3教程和廖雪峰官方网站的Python教程. 1.下载 1)打开https://www.pyth ...
- MongoDB学习笔记(一)简介+安装+基本CRUD+索引
思维导图 文章目录 思维导图 1. MongoDB相关概念 1.1 业务应用场景 1.1.1 三高需求 1.1.2 何时选择MongoDB 1.2 MongoDB简介 1.3 体系结构 1.4 数据模 ...
- Python3 学习笔记
Python3 学习笔记 1.基础语法 1.1 字符串操作 title() 将单词首字母改为大写 upper() 所有字母改为大写 lower() 所有字母改为小写 str1+str2 字符串通过'+ ...
- tensorflow学习笔记一:安装调试
denny的学习专栏 徐其华 博客园 首页 新随笔 联系 管理 订阅 随笔- 129 文章- 0 评论- 791 tensorflow学习笔记一:安装调试 用过一段时间的caffe后,对caff ...
- A Byte of Python3 学习笔记
A Byte of Python3 学习笔记 第七章 控制流 1.if语句(带输入函数) 2.while语句 3.for循环 4.break.continue.return的区别 第八章 函数 8.1 ...
- 51单片机学习笔记1 简介及开发环境
51单片机学习笔记1 简介及开发环境 一.51单片机 1. STC89C52单片机简介 2. 命名规则 3. 封装 (1)PDIP (2)LQFP (3)PLCC (4)PQFP 二.STC8051结 ...
- python基础第三章选择结构答案-python3 学习笔记(二)选择结构、循环结构
python3 学习笔记 python 优雅 明确 简单 1.选择结构 (1)简单判断 if else 使用格式: if 条件: 表达式1 else: 表达式2 (2)多条件判断 elif 使用格式 ...
- STM32F103CUBE学习笔记 一 环境安装
STM32F103CUBE学习笔记一 stm32cubemx安装 jre安装 stm32cubemx安装 stm32cubemx创建工程 准备工作 配置时钟 KEIL PACK安装 keil安装 st ...
- PHP学习笔记01: 安装PHP开发套件xampp
PHP学习笔记01: 安装PHP开发套件xampp 1.从网上下载xampp7.3.7 2.安装xampp
- APPCAN学习笔记005---AppCan IDE安装下载,AppCan IDE启动
APPCAN学习笔记005---AppCan IDE安装下载,AppCan IDE启动 创梦技术交流平台:资源下载,技术交流,网络赚钱: 交流qq群:1群:248318056 2群:251572072 ...
最新文章
- 微星网卡linux驱动,微星中国
- Linq中使用Left Join 和 Right Join
- 成功解决 ValueError: fill value must be in categories
- Boost.MultiIndex 双向映射示例
- OpenGL:纹理Textures
- SQLServer数据库访问帮助类
- Context是怎么在Go语言中发挥关键作用的
- tomcat服务器的虚拟目录,Windows系统下安装Tomcat服务器和配置虚拟目录的方法
- java关于创建对象描述_java中创建对象的方法
- ad17如何删除3d实体_3D打印的过程/流程
- 晶体管开关电路的设计以及如何提高其开关速度
- NB-IoT、LoRa逐渐商用 连接物联网长尾效应凸显
- Leach协议的实现
- 网心科技CEO、迅雷联席CEO陈磊:开启共享经济云计算时代
- git commit后回退方法
- AD19画原理图和PCB注意事项和步骤(主要为PCB和总结注意事项)
- 定时器、Lambda表达式、Stream流
- Python实战:利用Tkinter实现屏保程序
- 使用有限差分法求解无限长直的金属槽内的电位分布
- 推荐系统冷启动问题的常见解决方案