【Python全栈开发】Chapter 2 二进制与字符编码

  • 8 bit = 1 byte
  • 1024 byte = 1 kb
  • 1024 kb = 1 MB
  • 1024 mb = 1 GB
  • 1024 GB = 1 TB

8个 位置 可以表示 256个状态
ASCII 字符代码表

二进制 (0,1)
- ASCII
- GB2312 (中文简体)
- GBK (中文繁体)
- GB18030 (中文繁体、简体、少数民族语言)

Unicode几乎包含了全世界的字符
--> UTF-8
一个字符对应一个整数

print(chr(0b100111001011000))
print(ord("乘")) # 十进制

Python中的标识符和保留字

  • 保留字,有一些单词被赋予了特殊意义,在给对象起名字的时候不能用。
import keyword
print(keyword.kwlist)

变量的定义和使用

  • 变量是内存中一个带标签的盒子 (变量就像是一个带标签的盒子,你把需要的数据放进去)

  • 变量、函数、类、模块和其他对象起的名字就叫标识符

  • 规则

    • 字母、数字、下划线

    • 不能以数字开头

    • 不能是保留字

    • 严格区分大小写

      *Example*:
      name = '玛丽亚'

      • name 变量名
      • =:赋值运算符
      • 玛丽亚:值
  • 变量由三部分组成:

    • 标识:表示对象所存储的内存地址,使用内置函数id(obj)了获取
    • 类型:数据类型,type(obj)
    • 值:print(obj)
# Example
name = '玛丽亚'
print("标识:", id(name))
print("类型:", type(name))
print("值: ", name)
  • 当多次赋值之后,变量名会指向新的空间
    name = "Marya"
    name = "Bob"

数据类型

  • 整数

    • integer, int, 可以表示正数、负数和0,e.g. 98
    • 整数可以表现为2,10,8,16进制。不同进制表示方式
      • 十进制:默认的进制
      • 二进制:以ob开头
      • 八进制:以0o开头
      • 十六:以0x开头
  • 浮点 float e.g. 3.1415926

  • 浮点数由整数部分和小数部分组成

  • 浮点数存储不精确性:使用浮点数进行计算时,可能会出现小数点位数不确定的情况

print(1.1+2.2)
print(1.1+2.1)   

解决方案:导入模块decimal

from decimal import Decimal
print(Decimal('1.1')+Decimal('2.2'))

布尔 bool true, false
布尔值可以转化为整数:
True->1
False ->0

print(True+1)
print(False+1)
  • 字串符 str '人生苦短,我用python'
    • 不可变的字符序列(immutable)
    • 单引号,双引号,三单引号,三双引号
    • 三引号可以分布走动连续的多行

数据类型转换

str() e.g. str( int()
float()
str -> int: int()
int->str: str()
int -> float: float()
float -> int : int()
str->float : str()
float->str : float()

设定字符编码

#coding:gbk #coding:utf-8

你可能感兴趣的:(【Python全栈开发】Chapter 2 二进制与字符编码)