字符串类型
用途:记录描述性的状态,比如人的名字、地址、性别
定义方式:在'',"",""""""('''''')内包含一系列的字符
操作
①按索引取值(正向取+反向取):只能取
msg=“hello world”
msg【4】 取值为0
msg【-1】取值为d
②切片(顾头不顾尾,步长)就是从一个大的字符串中切分出一个全新的子字符串,没有改变原值。
③长度
len(msg)
④成员运算in和not in: 判断一个子字符串是否存在于一个大的字符串中。
⑤移除空白strip 会从字符串左侧开始找,找到一个非空格就听下,两个字母中间的空格不会移除,
msg=‘ lay ’
去掉左右两边的,不会管中间的
msg=‘ lay a ’
⑥切分 split:针对某种分隔符组织的字符串,可以切分成有规律的列表
msg=‘lay,a,b,b,c,c,d’
⑦循环
这些都是字符串的一个常规操作
strip:
strip 中有lstrip 和rstrip 分别是用于清楚左侧的和清除右侧的
lower,upper
lower用于将字符串中的所有字母改成小写
msg=‘asdADSA’
msg。lower()
upper是用于将字符串红的所有字母改成大写
msg=‘asdADSA’
msg。upper()
endswitch,startswitch
endswitch是判断这个字符串中的尾部是否是定义的值为结尾
msg。endswitch(‘la’)
startswitch是判断这个字符串中的首部是否是定义的值为开头
msg。startswitch(‘ay’)
format
res=‘{}{}{}’。formt(‘name’,18,‘male’)
结果为res=‘name 18 male’
res=‘{1}{0}{1}’。format(‘name’,18,‘male’)
结果为res=‘18 name 18’
res=‘{name}{age}{sex}’。format(sex=‘male’,name=‘name’,age=18)
结果res=name 18 male
join
tag=‘啊’
tag,join([‘lay’,‘say’,‘hello’])
结果:lay啊say啊hello
replace
msg=‘lay say i am lay’
msg.replace(‘lay’,‘帅逼’,1)
结果是 帅逼 say i am lay
三个参数中最后的1是表示替换的数量
isdigit
判断输入的值是否为数字的方法
只能判断‘6’ 13
‘四’‘IV’‘10.1’返回Flase
msg.isdigit()
find,rfind,index,rindex:查询这个值在字符串中索引的位置 rfind是从右到左查 find找不到会返回-1 index和find一样的操作不过index找不到会报错
msg='hello alex is sb'
print(msg.find('alex'))
print(msg.find('alex',0,10))
列表类型
用途:存放多个值,可以根据索引取值
定义域:在[]内用都好分隔开多个任意类型的值
l1=list('hello')
结果['h','e','l','l','o']
本质相当于for循环取值放入list
切片(顾头不顾尾)
l=['lay','111','22','33']
l[0:2] 结果为 ['lay','111']
长度
len()
成员运算: in 和 not in
追加:append
l.append['2323'] 在列表的最后加入
l.append[0,111] 在指定的索引0的前面添加111这个值
删除:
方式一:del l[0]通用方式
方式二:msg=l.remove(“XXX”) 删除置顶的值 返回的是none
方式三:msg=l.pop(1) 按照索引删除值(默认是从尾端删除) 返回删除的那个值
循环:
l=['xx','cc','vv']
for item in l:
print(item)
count:
l.count('xxx')
统计列表中XXX的总数
index:
查询列表中定义的值的索引,没有就报错
extend
items=“hello”
l.extend(items)
在l的列表最后面加上“h”“e”“l”“l”“o”
sort:i.sort()
将列表从小到大排序,只能排列表中全部数字或者字母
i.sort(reverse=True)将列表从大到小排序
reverse是将列表反转
队列:先进先出
i.append(‘1’)
i。append(‘2’)
print(i.pop(1))
print(i.pop(2))
堆栈:先进后出
i.append('1') .....
i.pop() pop 默认从尾端删除