字符串
可变字符串
在python中,字符串属于不可变对象,不支持原地修改,如果需要修改其中的值,只能创建新的字符串对象。但是,我们经常需要原地 修改字符串,可以使用io.StringIO对象或array模块
>>> import io
>>> s="hellow,sxt"
>>> sio=io.StringIO(s)
>>> sio
<_io.StringIO object at 0x000001D1F833F3A8>
>>> sio.getvalue()
'hellow,sxt'
>>> sio.seek(7)
7
>>> sio.write("g")
1
>>> sio.getvalue()
'hellow,gxt'
>>>
基本运算符
1.比较运算符可以连用,并且含义和我们日常使用完全一致
2.位操作
>>> a=0b11001
>>> b=0b01000
>>> c=a|b
>>> bin(c)
'0b11001'
>>> bin(c&b)
'0b1000'
>>> bin(c^b)
'0b10001'
>>> a=3
>>> a<<2 #左移1位相当于乘以2,左移两位相当于乘以4
12
>>> a=8
>>> a>>1 #右移1位相当于除以2
4
3.加法操作
(1)数字相加 3+2=5
(2)字符串拼接
(3)列表、元组等合并
4.乘法操作
(1)数字相乘
(2)字符串复制
(3)列表、元组等复制
复合赋值运算符
注:与C和JAVA不一样,python不支持自增(++)和自减(–)
运算符优先级问题
实际使用中,记住如下的简单规则,复杂的表达式一定要用小括号组织
1.乘除优先加减
2.位运算和算术运算>比较操作符>赋值运算符>逻辑运算符
序列
序列是一种数据存储方式,用来存储一系列的数据。在内存中,序列就是一块用来放多个值的连续的内存空间。
序列中存储的是整数对象的地址,而不是整数对象的值。
常用的序列结构有:字符串、列表、元组、字典、集合
列表简介
列表:用于存储任意数目、任意类型的数据集合
列表是内置可变序列,是包含多个元素的有序连续的内存空间。列表定义的标准语法格式:
a=[10,20,30,40]
列表中的元素可以各不相同,可以是任意类型
列表对象的常用方法汇总如下
方法 | 要点 | 描述 |
---|---|---|
list.append(x) | 增加元素 | 将元素x增加到列表list尾部 |
list.extend(alist) | 增加元素 | 将列表alist所有元素加到列表list尾部 |
list.insert(index,x) | 增加元素 | 在列表list指定位置index处插入元素x |
list.remove(x) | 删除元素 | 在列表list中删除首次出现的指定元素x |
list.pop([index]) | 删除元素 | 删除并返回列表list指定位置index处的元素,默认是最后一个元素 |
list.clear() | 删除所有元素 | 删除列表所有元素,并不是删除列表对象 |
list.index(x) | 访问元素 | 返回第一个x的索引位置,若不存在x元素抛出异常 |
list.count(x) | 计数 | 返回指定元素x在列表list中出现的次数 |
len(list) | 列表长度 | 返回列表中包含元素的个数 |
list.reverse() | 翻转列表 | 所有元素原地反转 |
list.sort() | 排序 | 所有元素原地排序 |
list.copy() | 浅拷贝 | 返回列表对象的浅拷贝 |
python的列表大小可变,根据需要随时增加或减小
字符串和列表都是序列类型,一个字符串是一个字符序列,一个列表是任何元素的序列。我们前面学习队很多字符串的方法,在列表中也有类似的用法,几乎一模一样
列表的创建
基本语法[]创建
a=[10,20,‘gaoqi’,‘sxt’]
a=[]
list()创建
使用list()可以将任何可迭代的数据转化成列表