Python教程(廖雪峰)_1

§.1 Python简介

Python有哪些缺点呢?

  1. 运行速度慢
    C语言:编译型语言。运行前直接编译成CPU能执行的机器码,所以非常快。
    Python:解释型语言。执行时会一行行地翻译成CPU能理解的机器码,翻译过程非常耗时,所以很慢。
  2. 代码不能加密。
    凡是编译型的语言,不用发布源代码,只需要把编译后的机器码(xxx.exe)发布出去;而解释型的语言,则必须把源码发布出去。

§.2 安装Python

略。

§.2.1 Python解释器

CPython:官方版本的解释器,用C语言开发的
IPython:基于CPython之上的一个交互式解释器
PyPy:采用JIT技术,对Python代码进行动态编译,显著提高执行速度。(PyPy和CPython有一些是不同的,可能会有不同的结果。需要了解PyPy和CPython的不同点
Jython:在Java平台上的Python解释器,编译成Java字节码执行。
IronPython:在微软.Net平台上的Python解释器,编译成.Net的字节码。

小结:Python的解释器很多,但使用最广泛的还是CPython。如果要和Java或.Net平台交互,最好的办法是通过网络调用来交互,确保各程序之间的独立性。

§.3 第一个Python程序

在Python交互式模式下,可以直接输入代码,然后执行并立刻得到结果。在命令行模式下,可以直接运行.py文件。

§.3.1 使用文本编辑器

§.3.2 Python代码运行助手

§.3.3 输入和输出

输入是Input,输出是Output。 input() 和 print() 是在命令行下面最基本的输入和输出因此,我们把输入输出统称为Input/Output,或者简写为IO。

§.4 Python基础

Python使用缩进来组织代码块。Python程序是大小写敏感的。

§.4.1 数据类型和变量

数据类型
    1. 整数:1,-1000,0xff00(十六进制)
      整数运算永远是精确的,没有大小限制
    2. 浮点数:1.23,1.23e9,-9.01e-5
      浮点数运算可能有误差,如3.15+0.01 = 3.1599999999999997
      没有大小限制,但是超出一定范围就直接表示为 inf(无限大)
    3. 字符串:’abc‘,“xyz”
      用转义字符\可以转义很多字符,用r''表示''内部的字符串默认不转义,用'''……''' 的格式表示多行内容
    4. 布尔值:True,False
      布尔值可以用and、or和not运算。
    5. 空值:None
变量

变量名必须是大小写英文、数字和下划线的组合,且不能用数字开头。同一个变量可以反复赋值,且可以是不同类型的变量。Python这种变量本身类型不固定的语言称之为动态语言

执行赋值语句 a = 'ABC' ,解释器创建了字符串 'ABC' 和变量 a ,并把 a指向 'ABC'

常量

通常用全部大写的变量名表示常量: PI = 3.14159265359 

§.4.1 字符串和编码

字符编码
 字符  ASCII (单字节)  Unicode (双字节) UTF-8 (可变长字节)
 A  01000001  00000000 01000001  01000001
 中   -  01001110 00101101  11100100 10111000 10101101

 

 

在计算机内存中,统一使用Unicode编码,当需要保存到硬盘或者需要传输的时候,就转换为UTF-8编码。

字符串

在Python 3中,字符串是以Unicode编码的。对于单个字符的编码,Python提供了ord()函数获取字符的整数表示,chr()函数把编码转换为对应的字符。

由于Python的字符串类型是str,一个字符对应若干个字节。bytes类型的数据用带b前缀,每个字符都只占用一个字节。

str通过encode()方法可以编码为指定的bytes。bytes中,无法显示为ASCII字符的字节,用\x##显示。要把bytes变为str,就需要用decode()方法。

为了避免乱码问题,应当始终坚持使用UTF-8编码对strbytes进行转换。在保存源代码时,就需要确保文本编辑器正在使用UTF-8 without BOM编码,务必指定保存为UTF-8编码。

  • 为了让它按UTF-8编码读取,我们通常在文件开头写上这两行:
    #!/usr/bin/env python3
    # -*- coding: utf-8 -*-

第一行注释是为了告诉Linux/OS X系统,这是一个Python可执行程序,Windows系统会忽略这个注释;

第二行注释是为了告诉Python解释器,按照UTF-8编码读取源代码,否则,你在源代码中写的中文输出可能会有乱码。

格式化
  1. 在Python中,采用的格式化方式和C语言是一致的,用%实现,举例如下:
  2. 是使用字符串的format()方法
    >>> 'Hello, {0}, 成绩提升了 {1:.1f}%'.format('小明', 17.125)
    'Hello, 小明, 成绩提升了 17.1%'

     

§.4.1 数据类型和变量

§.4.1 数据类型和变量

 

posted @ 2019-02-03 20:00  hd092336  阅读(492)  评论(0编辑  收藏  举报