字符串、列表

字符串
1.格式化
例如:

  • s="我叫%s,我住在%s,我%d岁" % (name,address,age)
  • s1="我叫{},我住在{},我{}岁" format (name,address,age)
  • s2=f"我叫{name},我住在{address},我{age}岁" #有python版本要求
    2.索引和切片
    索引:按位置提取元素。
    例如:
    str="我叫小王" str[0]输出结果 我str[1]输出结果 教叫 切片:从一个字符串中提取一部分内容。 例如:str="我叫小王"
    str[0:2] 输出结果 我叫
    str[2:4] 输出结果 小王
    格式:
    str[start:endd:r]:start是开始位置,endd是结束位置,r是切片的步长。
    str[::-1]:步长是负数,从后往前取。,步长用来控制切片的方向。::表示取到所有数据。
    注意:切片取不到第二个位置(end)的元素。
    3.字符串的常规操作
    注意:字符串操作一般不会对原串产生影响,一般返回新串。
    s1=s.capitalize() #将字符串的第一个字母变成大写,其余字母变为小写。
    s2=s.title() #字符串中所有单词首字母大写。
    s3=s.lower() #字符串小写。
    s4=s.upper() #字符串大写。
    4.字符串的替换和切割
    替换:
    s1=s.strip() #去掉字符串前后空格、/t、/n。
    s2=2.replace(old,new) #替换字符串中的部分字符,若想将s中的空格替换掉,则old写成“ ” new写成“”。
    切割:
    s1=s.spilt(用什么来切割) #切割之后的结果会放到列表中。用什么切割就会损失什么。
    连接:
    '_'.join(lst) #将lst列表中的字符串用_连接起来
    5.字符串的查找和判断
    查找:
    s1=s.find(查找的字符) #找到返回他在第几个位置,注意不是返回下标,下标是从零开始算的,位置是从1开始算;未找到返回-1。
    s2=s.index(查找的字符) #找到返回他在第几个位置,注意不是返回下标,下标是从零开始算的,位置是从1开始算;未找到返回报错。
    判断:
    s1=s.startswith('你') #字符串s是不是以你开头。
    s1=s.endswith('你') #字符串s是不是以你结尾。
    s1=s.isdigit() #字符串s是不是整数。
    6.字符串长度
    s1=len(s) #返回字符串的长度
    列表
    列表:python中用[]表示列表,列表中的每一个元素通过逗号隔开。
    特性:
  • 像字符串一样有索引和切片。
  • 列表索引超过返回会报错。
    1.列表的增删改查
    增:
    lst.append('小明') #在列表的后面追加某项。
    lst.insert(0,'小明') #在某个位置插入某项。
    lst.extend(['晚饭','午饭','早餐']) #合并两个列表。
    删:
    ret=lst.pop(3) #给出被删除元素的索引,返回被删除元素。
    lst.remove('小王') #删除某个元素。
    改:
    lst[4]='小白'
    查:
    lst[3]
    2.列表的排序
    lst.sort() #对列表进行升序排序。
    lst.sort(reverse=TRUE) #对列表进行降序排序。
    3.列表的嵌套
    例:
    lst=['你好吗','我很好','在干呢',['想你',['不信','信']]
    lst[3][1][0] #输出结果 不信
    4.列表的循环删除
    注意:先存后删,原因:删后补位,但循环仍在继续,删数据删不干净。
    例:删除lst列表中所有姓张的同学
#定义一个临时列表存放需要删除的字符串
temp=[]
#将需要删除的字符串存放到temp列表中
for i in len(lst):
item=lst[i]
if item.startswith()=='张':
temp.append(item)
#从lst列表中删除temp列表中包含的各个字符串,并将结果输出
for temp in lst:
lst.remove(temp)
print(lst)