列表、元组、字符串
列表list
-
定义
[元素1,元素2,……,元素n] -
创建列表
直接创建, range()创建,推导式创建,创建4*3的二维数组,混合列表,空列表 -
列表中添加元素
list.append(obj) 添加 在列表末尾添加,只接受一个参数,可以是任何数据类型并在list中保持原数据类型。obj 目标
list.extend(seq) 扩展 在列表末尾一次追加另一个序列的值。(用新列表来扩展原列表)seq 序号,顺序
list.insert(index,obj) 插入 在编号index(地址,索引)前插入obj。
图中列表x进行更改,而a也随之进行更改,为什么?
如果我们有一个 可变对象 (list, dict, set 等等) ,我们可以使用某些特定的操作来改变它,所有指向它的变量都会显示它的改变。
如果我们有一个 不可变对象 (str, int, tuple 等等) ,所有指向它的变量都将显示相同样的值,但凡是会改变这个值的操作将总是返回一个新对象。
具体见链接。 -
删除列表中元素
list.remove(obj) 移除列表中某个值的第一个匹配项。
list.pop(index) /\ list.pop([index=-1]) 根据 地址 移除列表中一元素,并返回该移除的元素的值 [index=-1]表示 默认移除最后一个。
index 列表中从0为第一个开始,最后一个从index为-1开始安排地址。
remove,pop 一个删除的为值,另一个根据索引删除。
del var1[索引]删除 如del x[2] x[2]表示列表中第三个元素 -
获取列表中元素
索引来获取单个元素
切片 start:stop:step 来获取多个元素
x[3:] 表示从x表中从获取从index=3开始到最后的值(包括3)。step默认值1
x[-3:] 表示获取从倒数第三个开始的数据。
x[:2]表示从第一个开始(索引为0)到索引值为2的为止(不包括2)。
x[1::2],x[::-1]表示倒着排所有列表中元素。
复制week列表中所有元素 week(???? 。
图中第一个切片 表示倒序切片,从最后一个开始到索引为3(不包括3)的切片。
第三个表示从索引为3开始到索引为1(不包括1)的切片。
6.列表中常用操作符
== 等号,+ 连接,* 重复,in、not in 成员关系操作符。
append,extend,insert对列表增加元素没有返回值,时直接改变了原数据,而用+会创建新的list。
- 其他方法
list.count(obj) 统计某个元素出现在列表中的次数。
list.index(x[,start[,end()]]) 从列表中找出某个值第一个匹配项的索引位置
list.reverse 反向列表中的元素。
list.sort(key=None,reverse=False) 对原列表进行排序。(默认为升序,False)
key–用来比较的元素 如[(4,1),(2,2),(1,3)]. 取x.sort(key=takesecond)表示用第二个元素进行比较。
x.reverse 表示对x表中元素反向,但不需通过其他来定义。
元组tuple
(元素1,元素2,……,元素n)
元组与列表不同:元组被创建后不能被修改,类似字符串。其余和列表相似。
注意: 1.元组可以用()也可以什么都不用。temp(临时) temp=2,3,4
2.元组只包含一个元素时,需要在元素后加 逗号。temp=(1,)
print(8*(8)) #64 print(8*(8,)) #(8,8,8,8,8,8,8,8)
3.二维元组 x=(1,3),(3,4)
元组 索引(indexing),切片(slicing)
如:temp[0][1]表示索引 第一个里面的第二个元素。如 Y=(1,2,3)Y[0][1]=2
更新和删除元组(创建新的元组,占用内存)
用+连接
直接更改元组中元素。
元组无法直接更改。
- 元组中相关操作符 同 列表
- 内置方法 元组大小内容不可更改,因此只有count和index两种方法。
- 解压元组,见实例。通配符 * ,如:*rest, *-
字符串str
1.引号直接的字符集合
如果某个字符串中需要出现单引号与双引号,可以用 \ 进行转译。如
- 常用转义字符
转义字符 | 描述 |
---|---|
\\ | 反斜杠符号 |
\‘ | 单引号 |
– | – |
\“ | 双引号 |
\n | 换行 |
– | – |
\t | 横向制表符(TAB) |
\r | 回车 |
- 原始字符只需在字符串前加英文字母r即可。
- ‘’‘ ’‘’ 允许一个字符串跨多行。
2.字符串不可修改(与元组类似)
切片与拼接
常用内置方法
- capitalize() 将字符串的第一个字符转换为大写。
- lower() 转换字符串中所有大写字符为小写。
- upper() 转换字符串中的小写字母为大写。
- swapcase() 将字符串中大写转换为小写,小写转换为大写。
count(str, beg= 0,end=len(string)) 返回 str 在 string 里面出现的次数,如果 beg 或者 end 指定则返 回指定范围内 str 出现的次数