目录
1.补充format
2可变字符串
3基本运算符
4赋值运算符
5运算符优先级
6序列
7列表常用操作汇总
8列表的创建
range()创建整数列表
推导式创建列表
列表增加和删除
append()方法是在原来列表尾部增加
如果用加法拼接会产生新的列表 即地址发生改变
extend()也是原地扩展 不改变地址
insert()插入
列表也可以乘法扩展与字符串类似
列表元素的删除
列表的访问和计数
成员资格判断
列表切片操作
列表的遍历
列表排序
1.修改原列表
2.建新列表排序
3.reversed()返回迭代器
4. max() min() sum()
多维列表
9元组 不可变序列
元组的创建
元组的访问和计数
元组排序
zip
生成器推导式创建元组
1.补充format
格式化字符串–format-拜师资源博客http://blog.17baishi.com/1403/
2可变字符串
原地修改字符串可以使用 io.StringIO对象 或 array模块
import io
a="hello, sxxxt"
print(a)
print(id(a))
aio=io.StringIO(a)
print(aio)
print(aio.getvalue())
aio.seek(4)
aio.write('n')
print(aio.getvalue())
print(id(a))
print(a)
print(id(aio))
运行结果 id(a)与id(aio) 是不一样的
hello, sxxxt
1501297619376
<_io.StringIO object at 0x0000015D8C48C790>
hello, sxxxt
helln, sxxxt
1501297619376
hello, sxxxt
1501297166224
3基本运算符
1.比较运算符可以连用
2.位操作 bin()可以将数字转化成二进制表示
与 或 异或 左移一位相当于乘2,a=3 a<<2
3.加法操作
1.数字相加 2.字符串拼接 3.列表、元组合并
4赋值运算符
5运算符优先级
使用时用括号组织
6序列
序列是连续内存空间
Python 中的序列 :字符串、列表、元组、字典、集合
例:a=[10,20,30,40] 列表的头地址指向a,再通过索引找到后面的对象
列表大小可变,随时改(java中数组维度不可改变)
7列表常用操作汇总
8列表的创建
a=[10,50,'nnn','ddd']
a=[]
a=list()
a=list(range(10)) # 把可迭代化数据转化成列表
range()创建整数列表
list(range(start,end,step))
推导式创建列表
a=[x*2 for x in range(100) if x%9==0]
print(a)
列表增加和删除
append()方法是在原来列表尾部增加
a=[10,20]
a.append(202)
print(a)
如果用加法拼接会产生新的列表 即地址发生改变
extend()也是原地扩展 不改变地址
a=[10,20]
a.extend([20,202])
print(a)
insert()插入
append()方法是在原来列表尾部增加
a=[10,20]
a.append(202)
print(a)
如果用加法拼接会产生新的列表 即地址发生改变
extend()也是原地扩展 不改变地址
a=[10,20]
a.extend([20,202])
print(a)
insert()插入
extend()也是原地扩展 不改变地址
a=[10,20]
a.extend([20,202])
print(a)
insert()插入
a.insert(2,20)指定插入位置以及插入内容
列表也可以乘法扩展与字符串类似
列表元素的删除
1.del a[1] 通过索引删除 本质是拷贝处理
2. c=a.pop(3) 按照索引删除一个值并返回,默认删最后一个
3.a.remove(200) 直接删除元素 删除首次出现的 没有则抛出异常
列表的访问和计数
index(value,[start,[end]])指定范围返回搜索值的索引
a=[10*x for x in range(10)] a.insert(2,20) a.extend([20,20,20]) print(a) print(a.index(20)) print(a.index(20,4))
count()获得指定元素出现的次数
len()返回列表长度
成员资格判断
in/ not in
列表切片操作
与字符串切片操作异曲同工
列表
列表的遍历
a=[10,20,30,40]
for object in a:
print(object)
列表排序
1.修改原列表
1.修改原列表
a=[10,20,5,60]
a.sort() 直接升序
a.sort(reverse=True) 降序
import random 涉及到随机数需要导入这个库
random.shuffle(a) 打乱顺序
2.建新列表排序
a=sorted(a,reverse=True)
3.reversed()返回迭代器
a=[10,20,40,30]
c=reversed(a)
print(list(c))
4. max() min() sum()
多维列表
多维列表
本质是列表套列表,取值也可以索引套索引
可以用双层循环的方法遍历
9元组 不可变序列
不可增删改,其他的方法与列表类似
元组的创建
1.a=(1,2,3) 或 a=1,2,3 小括号可以省略
b=(20,)加一个逗号不然解释器不把它看成元组
2.b=tuple() 把对象转化成元组
元组的访问和计数
1.通过索引
2.通过切片
元组排序
只能用内置函数 sorted(),即使传进去是元组 输出也是列表
zip
a=[1,2,3]
b=[4,5,6]
c=[7,8,9]
d=zip(a,b,c)
print(list(d))
生成器推导式创建元组
得到一个生成器对象再转化成元组
s=(x*2 for x in range(4)) print(s.__next__()) print(s.__next__()) print(s.__next__()) print(s.__next__())



