Python学海无涯路【第01回】初始Python
目录
- 1、Python简介
- 1.1、Python的作者
- 1.2、Python的应用领域
- 1.3、Python的分类
- 1.3.1、Cpython
- 1.3.2、Jyhton
- 1.3.3、IronPython
- 1.3.4、 PyPy(特殊)
- 1.3.4、其它
- 1.4、Python2和Python3
- 2、编码
- 2.1、ASCII
- 2.2、Unicode
- 2.3、utf-8
- 2.4、GBK和GB2312
- 2.5、UTF-8和GBK的转换
- 2.5、encode和decode
- 2.6、Python使用的编码
- 2.7、Python源文件开头
- 3、注释
1、Python简介
1.1、Python的作者
python的创始人为吉多·范罗苏姆(Guido van Rossum)。1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。
1.2、Python的应用领域
Python可以应用于众多领域,如:数据分析、组件集成、网络服务、图像处理、数值计算和科学计算等众多领域。目前业内几乎所有大中型互联网企业都在使用Python,如:Youtube、Dropbox、BT、Quora(中国知乎)、豆瓣、知乎、Google、Yahoo!、Facebook、NASA、百度、腾讯、汽车之家、美团等。互联网公司广泛使用Python来做的事一般有:自动化运维、自动化测试、大数据分析、爬虫、Web 等。
1.3、Python的分类
1.3.1、Cpython
Python的官方版本,使用C语言实现,使用最为广泛,CPython实现会将源文件(py文件)转换成字节码文件(pyc文件),然后运行在Python虚拟机上。
1.3.2、Jyhton
Python的Java实现,Jython会将Python代码动态编译成Java字节码,然后在JVM上运行。
1.3.3、IronPython
Python的C#实现,IronPython将Python代码编译成C#字节码,然后在CLR上运行。(与Jython类似)
1.3.4、 PyPy(特殊)
Python实现的Python,将Python的字节码字节码再编译成机器码。
1.3.4、其它
Python还有RubyPython、Brython ...等多个版本
1.4、Python2和Python3
语法上Python3并不完全兼容Python2,Python 2里面的相当部分语法在Python 3中已经被弃用,也就是说Python3并不能保证完全运行Python2的语法写出来的程序,这点和其他语言相比差异比较大。
有种说法是Python2正在逐步的向Python3改变,慢慢的最终向Python3的语法无限接近,有个故事叫温水煮青蛙,大概可以在这里形容下这件事。
2、编码
2.1、ASCII
ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,其最多只能用 8 位来表示(一个字节),即:2**8 = 256,所以,ASCII码最多只能表示 256 个符号。
2.2、Unicode
Unicode(统一码、万国码、单一码)是一种在计算机上使用的字符编码。Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,规定虽有的字符和符号最少由 16 位来表示(2个字节),即:2 **16 = 65536,
注:此处说的的是最少2个字节,可能更多
Unicode是一个以’U+’字符开头,后面跟着4位或者5位或者6位十六进制数字
2.3、utf-8
UTF-8,是对Unicode编码的压缩和优化,他不再使用最少使用2个字节,而是将所有的字符和符号进行分类:ascii码中的内容用1个字节保存、欧洲的字符用2个字节保存,东亚的字符用3个字节保存...
UTF-8用三个字节表示中文。
单字节的ASCII码字符仍然映射的是单字节,而且ASCII编码方式是UTF-8的子集
2.4、GBK和GB2312
GBK和GB2312是专门为中国人设计的编码,这两种编码中汉字占两个字节。
2.5、UTF-8和GBK的转换
一个汉字,utf-8要用三个字节表示,gbk用2个字节表示。
utf-8和gbk之间不能直接转换,只能通过Unicode转换,如下图所示:
2.5、encode和decode
UTF-8或者ASCII码不过是对应从Unicode到字节的映射方式,既然有映射方式,那么就有映射方向。我们把从Unicode到字节码(byte string)称之为encode,把从字节码(byte string)到Unicode码称之为decode 。
2.6、Python使用的编码
Python2解释器默认以ASCII编码去解释py程序,如果py程序中只含英文,程序执行不受影响,如果含有中文,Python2将无法执行。
所以用Python2解释器时,程序里需加上下面一句代码,告诉Python2解释时要按照UTF-8的编码去解释。
# -*- coding:utf8 -*-
Python3无此限制,Python3默认用utf-8。
2.7、Python源文件开头
#!/usr/bin/env python
#-*- coding: utf-8 -*-
第一行注释事为了告诉Linux/OS X系统,这是一个Python可执行程序,Windows系统会忽略这个注释;
第二行注释市为了告诉Python解释器,按照UTF-8编码读取源代码,否则,在源代码中写的中文输出可能会有乱码
3、注释
单行注视:# 被注释内容
多行注释:""" 被注释内容 “”"
Python学海无涯路【第01回】初始Python相关推荐
- 网络工程师的python之路pdf_网络工程师的Python之路---Ansible篇
版权声明:我已加入"维权骑士"(http://rightknights.com)的版权保护计划,所有知乎专栏"网路行者"下的文章均为我本人(知乎ID:弈心)原创 ...
- 【Python之路】第二篇--初识Python
Python简介 Python可以应用于众多领域,如:数据分析.组件集成.网络服务.图像处理.数值计算和科学计算等众多领域.目前业内几乎所有大中型互联网企业都在使用Python,如:Youtube.D ...
- Python之路【Day1】:Python基础
目录: 1.Python简介 2.发展史 3.Python 2 or 3? 4.安装 5.Hello World程序 6.变量 7.用户输入 8.模块初识 9.pyc是个什么鬼? 10.数据类型初识 ...
- 【Python之路】第五篇--Python基础之杂货铺
字符串格式化 Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存. 1.百分号方式 ...
- 【Python】【应用 01】使用python初步处理文件数据就那么简单!(本文以处理excel和目录为例)
文章目录 写在前面 一.对目录(文件夹)和文件的处理 1.1 明确需求 1.2 进入目录找数据 二.对excel数据表的处理 写在前面 本文使用的python版本是python2.7.18 一.对目录 ...
- python之路day9_亮仔的Python之路Day9——Python知识体系重组
day9:2019-09-03 今日目的: 梳理python知识框架体系 温故而知新 最近总是在想 如何构建一个知识体系 我们经常接受碎片化的知识 但是缺乏积累,无法搭建属于自己的知识框架 我目前的解 ...
- [转载] python之路《第二篇》Python基本数据类型
参考链接: Python中的Inplace运算符| 1(iadd(),isub(),iconcat()-) 运算符 1.算数运算: 2.比较运算: 3.赋值运算: 4.逻辑运算: 5.成员运算: 6. ...
- 我的python之路(二):python环境安装
python 3 python3.5以上不支持Windows xp系统 IDLE 在安装Python的时候要特别注意勾上Add Python 3.5 to PATH,,然后点"Install ...
- 网络工程师的python之路pdf_网络工程师的Python之路:网络运维自动化实战
内容简介 本书赞誉 关于作者 前言 致谢 第1章 Python的安装和使用 1.1 安装Python 1.1.1 在Windows下安装Python 3.8.2 1.1.2 在Linux下安装Pyth ...
最新文章
- 在 Linux 上使用 lspci 命令查看硬件情况
- c语言编写单词位置反转,C语言笔试题答案.docx
- mysql 内存占用过多的解决方法
- 微信支付—微信H5支付「微信内部浏览器」
- 【转】C# DataTable使用方法详解
- STM32--MPU内存保护单元(一)
- 连接池和 Timeout expired异常【转】
- python中绘制散点图的函数_如何使用python的pygame模块绘制随机散点图
- 【链表】链表中倒数最后k个节点
- Class 'QrCode' not found ? 和 laravel 生成二维码接口(Simple QrCod)
- linux服务器安装nexus,Linux下搭建maven服务器nexus
- php.ini 没有pdo,检查了启用的php.ini文件“ extension = php_pdo_mysql.dll”,但仍然出错...
- Pytorch版Lookahead使用及遇到的问题
- 常用的统计抽样分布和正态总体的抽样分布
- jQuery01(达)
- KOF97判定框查看方法
- 反射系数和透射系数随入射角的变化曲线
- 2021年 证券 考试 答案 后续培训 投资 基金 合规 政策 从业人员
- 发卡小程序源码,自动发卡小程序
- 车联网(智能网联汽车)无线电频率规划发布 助力制造强国和网络强国建设