Python中字符串、列表、元组、集合、字典中的一些知识,有些不太常见
————————笔记——————————
# 字符串
1. 字符串是不可变的。
2. 字符串切片输出:`[start:end:step]`。使用`a[::-1]`倒序输出字符串。
3. `str.split(str="", num=string.count(str))`方法:分隔一个字符串, str:分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)
num :分割次数。默认为 -1, 即分隔所有。
```
str = "Line1-abcdef \nLine2-abc \nLine4-abcd";
print(str.split( )); # 以空格为分隔符,包含 \n
print((str.split(' ', 1 )); # 以空格为分隔符,分隔成两个
#结果:
#['Line1-abcdef', 'Line2-abc', 'Line4-abcd']
#['Line1-abcdef', '\nLine2-abc \nLine4-abcd']
txt = "Google#Runoob#Taobao#Facebook"
# 第二个参数为 1,返回两个参数列表
x = txt.split("#", 1)
#结果:
#['Google', 'Runoob#Taobao#Facebook']
```
4. join()方法:合并成一个字符串。
5. strip()方法:去掉开头和结尾的空格或者指定的字符。如果不带参数,默认是清除两边的空白符,例如:{/n, /r, /t, ' '}。类似的:lstrip()左边删除、rstrip()右边删除。
6. 相关的方法:endswith()、startswith()、find()、rfind()、conut()、isalnum().
# 列表
1. 利用list()将字符串,元组转化为列表。
2. 可以使用切片倒序输出列表的元素,类似于字符串的倒序输出。
3. 使用append()方法添加元素到列表的末尾。
4. 合并两个列表的方法:使用`listA.extend(listB)`方法、使用`listA += listB` 合并。
5. 使用`insert()`方法在指定位置插入元素。
6. 使用`del()`方法在指定位置删除元素。
7. 使用`remove()`方法删除具有指定value的元素。
8. 使用`pop(index)`方法删除index位置的元素并返回该值,index默认为-1(末尾)。
9. 使用`index()`方法查询指定的元素的位置。
10. 使用`in、not in`判断元素的是否存在。
11. 使用`join()`转化为字符串。
12. 排序`sort()`:改变原来的列表。
13. 排序`sorted()`:不改变原来的列表。
# 元组
1. tuple是不改变的常量列表。
2. 元组的解包:将元组赋值给多个变量。
3. 使用tuple()来转换为元组
# 字典
1. 使用`dict()`方法转化为字典。
2. `update()`合并字典。
3. 使用`del()`删除指定的元素。
4. 使用`clear()`消除所有元素。
5. 使用`get()`获取元素。
6. 使用`keys()`获取所有键(py2返回列表,py3返回dist_keys()键的迭代形式,可使用list()转化为列表)。
7. 使用`items()`获取键值对(items.key(),itms.value())。
8. 使用`copy()`复制。
# 杂
1. 定义只有一个元素的元组要加上`,`,空元组使用`()`。
2. 序列共有的操作:使用下标获取值、切片、有`+和*`两种操作、成员运算、`len(),max(),min(),`方法
3. 使用`ord()`查看字符的ascll码。
4. 集合是无序的,使用`{}`定义,元素不允许重复,支持以下操作:len()方法、成员运算、能够进行减操作(求两个集合的差值)、能够求交集(&)、能够求并集(|),定义空的集合:`set()`,
5. 字典key(键),value(值)。使用`{key1:value1,key2:value2...}`定义。key必须是不可变类型:数字、字符串、元组
6. 值类型(不可改变):int str tuple 引用类型(可变):list set dict
7. 内存地址查看:`id()`,
8. 向列表里添加一个元素:`append()`方法。
9. 元组里面的列表是可以改变值的。
10. 判断变量类型:`isinstance(a,(int,str,float))`判断属于多种类型。
11. 例子:`1 or 2 and 3 = 1`,会先算 2and3 ,优先级的原因,左结合。
12. 优先级: `not > and > or`。