1、可变字符串
修改字符串方法:io.StringIO对象和array模块
举例:
import io
string="hello world"
iostring=io.StringIO(string)
#获取iostring值
a = iostring.getvalue()
print(a)
#'hello world'
#seek表示移动游标,下面代码iostring.seek(11)表示将游标移动到"hello world"的最后
iostring.seek(11)
#修改字符串
iostring.write("!")
b = iostring.getvalue()
print(b)
#'hello world!'
2、基本运算符
(1)比较运算符可以连用
a=4
3<a<10 #关系运算符可以连用
(2)位操作
>>> a = 0b11001
>>> b = 0b01000
>>> c = a|b
>>> c
25
>>> bin(c) #bin()函数将数字转化为2进制表示
'0b11001'
>>> bin(c&b)
'0b1000'
>>> b
8
>>> bin(b)
'0b1000'
>>> bin(c^b)
'0b10001'
>>>
>>> a = 3
>>> a << 2
12
>>>
>>> a = 3
>>> a << 2 #左移1位相当于乘2 左移两位相当于乘以4
12
>>> a = 8
>>> a >> 1 #右移1位相当于除以2
4
(3)加法操作
数字相加 3+2=5
字符串拼接 “3” + “2” ==> “32”
列表元组合并 [10,20,30] + [5,10,100] ==> [10,20,30,5,10,100]
(4)乘法操作
数字相乘 3*2 ==> 6
字符串复制 “set” * 3 ==> “setsetset”
列表、元组等复制 [10,20,30]*2 ==> [10,20,30,10,20,30]
3、复合赋值运算符
4、运算符优先级
5、序列
如图所示 **序列中存储的是整数对象的地址,而不是整数对象的值。**常见的序列结构有:字符串、列表、元组、字典、集合
6、一维列表
(1)列表常用方法
(2)列表的创建
<1> 基本语法创建
a = [10,20,'kdx','sdf']
a = [] #创建一个空的列表对象
<2> list创建
使用list()可以将任意可迭代数据转化为列表
a = list()
a = list(range(10))
a
[0,1,2,3,4,5,6,7,8,9]
<3> range()创建整数列表
range([start,] end [,step] )
start参数:可选 默认是0
end参数:必选,表示结尾数字
step参数:可选,表示步长,默认为1
<4>推导式生成列表
(3)列表元素的增加
一般只在列表的尾部添加和删除元素
<1> append() 方法
<2> +运算符操作
会创建新的列表对象,会涉及大量的复制操作,不建议使用
<3> extend()方法
将目标列表所有元素添加到列表的尾部,属于原地操作,不创建新的列表对象。
<4> insert() 插入元素
可以将指定的元素插入到列表对象的任意指定位置,但是会让后面的元素进行移动,影响处理速度,设计大量元素应该尽量避免使用。
(4)列表元素的删除
<1> del删除
<2> pop()方法
<3> remove()方法
(5)列表元素访问和计数
<1> 通过索引直接访问元素
<2> index()获得指定元素在列表中首次出现的索引
<3> count()获得指定元素在列表中出现的次数
<4> len()返回列表长度
<5> 成员资格判断
(6)切片操作
(7)列表排序
<1> 修改原列表,不建新列表的排序
<2> 建新列表的排序
<3> reversed()返回迭代器
<4> max和min
用于返回列表中的最大值和最小值
<5> sum
对数值型列表的所有元素进行求和操作,对非数值型列表运算会报错
7、二维列表
举例:
8、元组tuple
(1)列表属于可变序列,可以任意修改列表中的元素。元素属于不可变序列,不能修改元组中的元素。所以,元组没有增加、修改以及删除元素的相关方法。
(2)元组的创建
<1> 通过()创建元组。小括号可以省略。
<2> 通过tuple()创建元组
(3)元组的元素访问和计数
<1> 元组的元素不能修改
<2> 元组的元素访问和列表一样,只不过返回的仍然是元组对象
<3> 列表关于排序的方法list.sorted()是修改原列表对象,元组没有该方法。如果要对元组排序,只能使用内置函数sorted(tupleObj),并且生成新的列表对象。
(4)zip
zip(列表1,列表2,……)将多个列表对应的元素组合成元组,并返回这个zip对象。
(5)生成推导式创建元组
(6)元组总结
<1> 元组的核心特点是:不可变序列
<2> 元组的访问和处理速度比列表快
<3> 与整数和字符串一样,元组可以作为字典的键,列表则永远不能作为字典的键使用。