一、
在python中,所有非数字型变量都支持以下特点:
- 都是一个sequence,也可以理解为容器
- 取值[]
- 遍历for in
- 计算长度、max/min、比较、删除
- 链接和重复*
- 切片
二、list
List(列表) 是 Python
中使用 最频繁 的数据类型,在其他语言中通常叫做 数组
索引从0开始,从列表取值如果超出索引范围会报错
分类 | 关键字 / 函数 / 方法 | 说明 | |
---|---|---|---|
1 | 增加 | 列表.insert(索引, 数据) | |
列表.append(数据) | |||
列表.extend(列表2) | |||
2 | 修改 | 列表[索引]=数据 | 修改指定索引的数据 |
3 | 删除 | del 列表[索引] | 删除指定索引的数据 |
列表.remove[数据] | 删除第一个出现的制定数据 | ||
列表.pop | 删除末尾数据 | ||
列表.pop(索引) | 删除指定索引的数据 | ||
列表.clear | 清空列表 | ||
4 | 统计 | len(列表) | 列表长度 |
列表.count(数据) | 数据在列表中出现的次数 | ||
5 | 排序 | 列表.sort() | 升序 |
列表.sort(reverse=True) | 降序 | ||
列表.reverse() | 逆序,反转 |
应用场景:
开发中,一般列表存储相同类型的数据,通过迭代遍历,再循环体内部,针对列表中的每一项元素,执行相同的操作。
三、元祖
Tuple
(元组)与列表类似,不同之处在于元组的 元素不能修改
用()定义、索引从0开始
取值就是从元组中获取存储在指定位置的数据
遍历就是从头到尾依次从元组中获取数据
在实际开发中,除非能够确认元组中的数据类型,否则针对元组的循环遍历需求并不是很多。
让列表不可以被修改,以保护数据安全。
四、字典
字典是除列表以外python中最灵活的数据类型。
列表是有序的对象集合,字典是无需的对象集合。
字典使用键值对存储出局,键值对之间使用,分隔。键与值之间使用:分隔。键必须唯一且可哈希。
字典的常用操作:
clear
item
setdefault
copy
keys
update
fromkeys
pop
values
get
popitem
五、字符串
在python中使用一对双引号或者一对单引号定义一个字符串。
可以使用索引获取一个字符串指定位置的字符,索引计数从0开始,也可以使用for遍历。
字符串的常用操作:
判断类型:
string.isalpha() | 如果 string 至少有一个字符并且所有字符都是字母则返回 True |
string.isdecima() | |
string.isdigit() | |
string.isnumeric() | |
string.istitle() | 如果 string 是标题化的(每个单词的首字母大写)则返回 True |
string.islower() | 如果 string 中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是小写,则返回 True |
string.isupper() | 如果 string 中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是大写,则返回 True |
查找和替换:
说明 | |
检查字符串是否是以 str 开头,是则返回 True | |
string.endswith(str) | |
string.find(str, start=0, end=len(string)) | |
string.rfind(str, start=0, end=len(string)) | 类似于 find(),不过是从右边开始查找 |
string.index(str, start=0, end=len(string)) | 跟 find() 方法类似,不过如果 str 不在 string 会报错 |
string.rindex(str, start=0, end=len(string)) | 类似于 index(),不过是从右边开始 |
string.replace(old_str, new_str, num=string.count(old)) | 把 string 中的 old_str 替换成 new_str,如果 num 指定,则替换不超过 num 次 |
大小写转换
说明 | |
---|---|
string.capitalize() | 把字符串的第一个字符大写 |
string.title() | 把字符串的每个单词首字母大写 |
string.lower() | 转换 string 中所有大写字符为小写 |
string.upper() | 转换 string 中的小写字母为大写 |
string.swapcase() |
文本对齐:
说明 | |
---|---|
string.ljust(width) | 返回一个原字符串左对齐,并使用空格填充至长度 width 的新字符串 |
string.rjust(width) | 返回一个原字符串右对齐,并使用空格填充至长度 width 的新字符串 |
string.center(width) | 返回一个原字符串居中,并使用空格填充至长度 width 的新字符串 |
去除空白字符:
说明 | |
---|---|
string.lstrip() | 截掉 string 左边(开始)的空白字符 |
string.rstrip() | 截掉 string 右边(末尾)的空白字符 |
string.strip() |
拆分和连接:)
说明 | |
---|---|
string.partition(str) | 把字符串 string 分成一个 3 元素的元组 (str前面, str, str后面) |
string.rpartition(str) | 类似于 partition() 方法,不过是从右边开始查找 |
string.split(str="", num) | |
string.splitlines() | |
string.join(seq) | 以 string 作为分隔符,将 seq 中所有的元素(的字符串表示)合并为一个新的字符串 |
字符串的切片:
切片适用于字符串、列表、元组
切片方法使用索引值来限定范围,从一个大的字符串中切出小的字符串
列表和元祖都是有序的集合,都能够通过索引值或渠道对应的数据
字典是无序的集合,是使用键值对保存数据
六、公共方法
内置函数:
描述 | 备注 | |
---|---|---|
len(item) | 计算容器中元素个数 | |
del(item) | 删除变量 | |
max(item) | 返回容器中元素最大值 | |
min(item) | 返回容器中元素最小值 | 如果是字典,只针对 key 比较 |
cmp(item1, item2) | 比较两个值,-1 小于/0 相等/1 大于 | Python 3.x 取消了 cmp 函数 |
运算符:
Python 表达式 | 结果 | 描述 | 支持的数据类型 | |
---|---|---|---|---|
+ | [1, 2] + [3, 4] | [1, 2, 3, 4] | 合并 | 字符串、列表、元组 |
* | ["Hi!"] * 4 | ['Hi!', 'Hi!', 'Hi!', 'Hi!'] | 重复 | 字符串、列表、元组 |
in | 3 in (1, 2, 3) | True | 元素是否存在 | 字符串、列表、元组、字典 |
not in | 4 not in (1, 2, 3) | True | 元素是否不存在 | 字符串、列表、元组、字典 |
> >= == < <= | (1, 2, 3) < (2, 2, 3) | True | 元素比较 |
成员运算符:
描述 | ||
---|---|---|
如果在指定的序列中找到值返回 True,否则返回 False | ||
not in | 如果在指定的序列中没有找到值返回 True,否则返回 False |