数字类型Number
- 二进制0b开头
- 八进制0o开头
- 十六进制0x开头
- 科学计数法:写法是用e后面跟整数表示10的指数 例:1.11e-1 = 0.111
- 复数 虚部用j或J表示
字符串类型str
- 表示字符串
- 单引号
- 双引号
- 三个连续的单引号或双引号
- 单引号和双引号的交替使用
- 转义字符 反斜杠和后面跟着的一个或多个字符
- 不同系统对换行操作的不同表示
- windows:\n
- Linux:\r\n
- 字符串的格式化
- 字符串格式化的两种方式
- 利用百分号
- 利用format函数
- 利用百分号格式化
- 在字符串中,利用%表示一个特殊的含义,表示对字符进行格式化
- %d:此处应放入一个整数
- %s:此处应放入一个字符串
- 例如:
- print(“I am %d years old”%18) -->I am 18 years old
- print(“I am %s,I am %d years old”%(“zhangsan”, 18)) -->I am zhangsan,I am 18 years old
- format格式化字符串
- 在使用上和百分号格式化相似,用{}和:替代%,后面用format带参数完成
- 例如:
- str = “I am {0} years old”.format(18) -->I am 18 years old
- str = “I am {0},I am {1} years old”.format(“zhangsan”, 18) -->I am zhangsan,I am 18 years old
- 字符串格式化的两种方式
列表list
-
一组由顺序的数据的组合
-
创建列表
l = [] l = [100] l = [1, 2, 3] l = list()
-
列表常用操作
- 访问
- 使用下标操作(索引)
- 列表的位置是从0开始
- 分片操作
- 对列表进行任意一段的截取
- l[开始位置:结束位置]和l[开始位置:结束位置:步数]
- 截取范围包含开始下标的值不包含结束下标的值
- 正数下标从左往右从0开始到结束 负数下标从开始(负数)到-1结束
- 正常情况下分片开始下标小于结束下标,如果结束下标要大于开始下标则步数一定为负数(可用此进行列表颠倒)
- 切片可超标
- 分片操作是生成一个新的list
- 内置函数id,负责显示一个变量或者数据的唯一确定编号
- 访问
-
del: 删除命令
del l[2]
-
- 运算使两个列表相连接 * 运算使n个列表相连接
-
列表内涵: list content
-
通过简单方法创作列表
l = l[0, 1, 2] ll = [i for i in l] ll = [i*2 for i in l if i != 0]
-
-
关于列表的常用函数
-
len 求列表长度
-
max 求列表中的最大值
-
min 求列表中的最小值
-
list 将其他格式数据转换成list
-
append 插入一个于末尾
-
insert 指定位置插入
- insert(index, data) index位置 data数据
-
pop 取出列表最后一个元素
-
remove 删除列表中指定值的元素
- 如果被删除的值没在列表中则报错
- 即,删除列表指定的值操作应用try…excepty语句,或进行先行判定
-
clear 清空
-
reverse 翻转列表内容
-
extend 将一个列表拼接在后一个上
a = [1, 2] b = [3, 4] a.extend(b) a --> [1, 2, 3, 4]
-
count 查找列表中指定值或元素的个数
-
copy 拷贝,浅拷贝
- 浅拷贝只拷贝一层,内部嵌套的列表依然和原列表内对应的列表指向同一个地址
-
元组tuple
-
元组可以看成是一个不可更改的list
-
元组创建
t = () t = (1, ) t = 1, t = (1, 2, 3) l = [1, 2, 3, 4] t = tuple(l)
-
元组的特性
- 是序列表,有序
- 元组数据值可以访问,不可修改
- 元组数据可以是任意类型
- 基本具有list出可修改外的特性和操作,比如索引,分片,序列相加,相乘,成员资格操作等
-
-
- 运算与列表同理
-
-
关于元组的函数
- len max min 与列表相似
- tuple 转化或创建元组
- 其余与列表基本相似
-
两个变量交换值
- a, b = b, a
字典Dictionary
-
字典是一种组合数据,没有顺序的组合数据,数据以键值对形式出现
-
字典的创建
d = {} d = dict() d = {"one":1, "two":2, "three":3} d = dict({"one":1, "two":2, "three":3}) d = dict(one=1, two=2, three=3) d = dict( [("one",1), ("two",2), ("three",3)])
-
字典的特征
- 字典是序列类型,但是是无序序列,所以没有分片和索引
- 字典中的数据每个都有键值对组成,即kv对
- key: 必须是可哈希的值,比如int,string,float,tuple, 但是,list,set,dict 不行
- value: 任何值
-
访问数据
- 用 key 访问
-
成员检测
- for i in d, i 为 key ,d为字典
- for i in d.keys()
- for i in d.values()
- for k, v in d.items() k, v分别为键和值
-
字典生成式
- dd = {k:v for k, v in d.items()}
-
字典相关函数
-
通用函数: len max min dict
-
str(字典) 返回字典字符串格式
-
clear 清空字典
-
items 返回字典的键值对组成的元组格式
-
keys 返回字典的键组成的一个可迭代结构
-
values 返回字典的值组成的一个可迭代结构
-
get 根据指定键返回相应的值,可设置默认值
- d.get(键, 默认值) 当没有相应的键值对的时候则会返回默认值
-
fromkeys 使用指定的序列作为键,使用一个值作为字典的所有键的值
l = ["one", "two", "three"] #注意fromkeys两个参数的类型 #注意fromkeys的调用主体 d = dict.fromkeys(l, "num")
-
集合set
-
一堆确定的无序的唯一的数据,集合中每一个数据成为一个元素
-
集合的定义
s = set() s = {1, 2, 3} #大括号内必须有值,否则是dict类型
-
集合的特征
- 集合内数据无序,即无法使用索引和分片
- 集合内部数据元素具有唯一性,可以用来排除重复数据
- 集合内的数据,str, int, float, tuple,冰冻集合等,即内部只能放置可哈希数据
-
集合的函数
- len,max,min: 基本一致
- set 生成一个集合
- add 向集合内添加元素
- clear 清空
- copy 拷贝
- remove 移除指定的值,如不存在报错
- discard 移除集合中指定的值,如不存在不报错
- pop 随机删除一个元素
-
集合函数
- intersection: 交集
- difference:差集(可用-号运算)
- union: 并集子
- issubset: 检查一个集合是否为另一个集
- issuperset: 检查一个集合是否为另一个超集
-
frozen set:冰冻集合
- 冰冻和就是不可以进行任何修改的集合
- frozenset是一种特殊集合