第一个python程序

编写: hello.py

执行python程序
$ python3 文件路径名.py
常用的文件后缀:
.py            python语言后缀
.c             C语言
.cpp/.cc/.cxx  C++语言后缀
.java          Java语言后缀
在python交互模式下编写并执行代码
进入交互模式:
$ python3 <回车>
退出交互模式:
>>> quit() <回车>
>>> exit() <回车>
或输入: ctrl + d (输入文件结束符)
python 的注释
以 # 开头, 直至行尾
作用:
    让注释内容不参加解释执行
    sublime 注释快捷键  ctrl + /
python 程序的组成:
1. 程序是由模块组成
2. 模块是由数据,函数,类等组成
3. 函数由语句组成
4. 语句由表达式组成
python 的核心数据类型
数字(整型数int,浮点型数float,复数complex, 布尔型bool)
字符串 str, 列表 list 等
整型数 int
整数是不带有小数部分的数字
整数的字面值表示方式
十进制表示方式
  如:
    10
    200
    -100
    99999999999999999999999999
八进制表示方式
  如:
    0o177  (127)
    0o11   (9)
十六进制表示方式:
  如:
    0x11  (17)
    0xFF  (255)
    0x1a2b 
二进制表示方式:
  如:
    0b111
    0b101
进制:
二进制 逢二进一 (0~1)
八进制 逢八进一 (0~7)
十进制 逢十进一 (0~9)
十六进制 逢十六进一 (0~9,A-F, a-f)
浮点型数 float
浮点数是带有小数部分的数字(小数部分可以是0)

浮点数的字面值表示方式:
小数表示法:
  如:
    3.14  3.1  3.0  3.  0.14  .14
科学计数法:
  格式:
    小数 e/E (正负号) 指数
  如:
    6.18E-1  (等同于 0.618)
    2.9979e8  等于299790000.0
复数 complex
分为两部分:
    实部(real)
    虚部(image)
    虚部是以j或J结尾的数

字面值:
1j
(2J)
1+2J
3-4j
布尔型数 bool
用来表求真和假两种状态的数字
    True 表示值(条件满足或成立)
    False 表示假(条件不满足或不成立)
说明:
    True 的值为1
    False的值为0
内置对象
空值 None
    None 是一个表示不存的特殊对象
作用:
    用来占位
    变量解除绑定
表达式和运算符
表达式 expression
    由一个数字 或 数字和运算符 等组成

作用:
    通常让计算做一些事情并返回结果
如:
     1 + 2
     1 + 2 * 3 + 4 / 5
运算符:
算术运算符:
    +  加法
    -  减法
    *  乘法
    /  除法
    // 地板除floordiv
    %  求余
    ** 幂运算
/ 除法
    除法得到的数是浮点型数,不会丢弃小数部分
    1 / 3  # 得 0.333333333333
    8 / 2  # 得 4.0

  // 地板除
    除的结果云掉小数部分向下取整
    如:
      7 / 3        # 得 2.333333333333
      7 // 3       # 得 2
      3.25 // 1.5  # 得 2.0
  % 求余
    如:
      7 % 3       # 得 1
      3.25 % 1.5  # 得 0.25
  ** 幂运算
    格式:
      x ** y
      意为 x的y次方
    如:
      4 ** 2  # 得 16
      3 ** 4.0  # 得 81.0
运算符的优先级
**
* / // %
+ -
示例:
1 + 3 * 3 ** 2 + 4 // 2
1 + 3 * 9 + 4 // 2
1 + 27 + 4 // 2
1 + 27 + 2
28 + 2
30
括号分组子表达式:

()内部的表达式先进行计算

混合类型自动升级
1 + 2.14 返回类型为浮点型 3.14
3 + 4.0  返回 7.0

基本输出函数 print
格式:
    print(要打印的东西)

多个数据用逗号分隔开

变量 variable
什么是变量
变量是关联一个对象的"标识符"
标识符的命名规则:
必须为字母或下划线开头,
后跟字母或下划线或数字
不能使用python的关键字
说明:
    python的变量名区分大小写
  合法的标识符(变量名) 举例 :
    abc  a1b2 _abc  __Abcd  var  
  不合法的标识符:
    1a2b  $ABC  +a  -b  #ABC @ ABC
  python关键字:
    True, False, None, is, del, if, elif ...等
赋值语句
= 
  语法:
    变量名 = 表达式
    或
    变量名1 = 变量名2 = 表达式
    或
    变量名1, 变量名2 = 序列
作用:
    1. 创建一个变量,此变量用来绑定数据对象
    2. 修改一个变量的绑定关系,让其绑定另一个数据对象
说明:
    当变量不存在时,创建该变量,同时将变量绑定在这个对象上
    当变量存在时,改变此变量绑定的对象
    一个变量只能绑定一个对象
    两个变量可以同时绑定同一个对象
示例:
    pi = 3.1415926
    pi2 = pi  # pi变量 和 pi2 变量同时绑定 3.1415926
    x = y = 100  # x变量和 y变量同时绑定 100
    x, y = 100, 200  # 序列赋值
python 中的自动化内存管理
a = 10000
b = 20000
a = a + b  # 释放10000这个对象,a重新绑定30000
c = a   # c同时绑定在30000上
del 语句:
作用:
    用于删除变量,同时解除与对象的关联关系,如果可能能释放对象
语法:
    del 变量名
在交互模式下查看当前作用域的所有变量
  >>> help('__main__')
  退出键: q
示例:
    a = 10000  # 创建a变量,绑定10000
    print(a)  # 10000
    del a   # 删除了a变量,释放10000这个数据对象
    print(a)  # 出错
自动化内存管理和引用计数:
每个对象都会记录有几个变量绑定(引用)自身,
当引用的数量为0时,
则此对象将被销毁(释放内存资源), 
此种自动化内存管理的方式叫引用计数
例:
    a = 10000
    b = a  # 两个变量同时绑定10000这个数据对象
    del a
    del b  # 此时会释放10000这个数据对象
is / is not 运算符
作用:
    判断两个对象是否是同一个对象,
    当是同一对象时返回True,否则返回False
说明:
    is not 返回值与is 相反
语法:
    x is y
    x is not y
id(obj) 函数
作用:
    返回一个对象在内存中的地址
小整数对象池

CPython中,整数-5至256的数永远存在于小整数池中,不会释放且可重复使用

示例:
    a = 100
    b = 100
    a is b # True
复合赋值算术运算符

运算符

说明

y += x

等同于 y = y + x

y -= x

等同于 y = y - x

y *= x

等同于 y = y * x

y /= x

等同于 y = y / x

y //= x

等同于 y = y // x

y %= x

等同于 y = y % x

y **= x

等同于 y = y ** x

例:
    x = 100
    x *= 2  # x = 200
    x = 100
    x = x * 2  # x = 200