对操作的对象截取其中一部分的操作。字符串、列表、元组都支持切片操作。格式:序列名[开始位置的下标:结束位置的下标:步长]
如果不写开始,默认从0下标开始不写结束,默认选取到最后不写步长,默认从1开始如果开始和结尾都不写,表示选取所有
分片操作 只包含位于 起始索引号位置的元素, 不包含位于终止索引号位置的元素;同时,起始和终止的意义都是针对于从 左向右的顺序来定义的#使用切片获取多个元素In [1]: s="abcdefg"In [2]: s[0:3]Out[2]: 'abc'
步长就是每数几个取一个的意思——(如果步长为2,每数两个取一个) 步长是正数时,是从左向右开始操作 步长是负数时,是从右向左操作
find():检测某个子串是否包含在这个字符中,如果在返回这个子串开始的位置下标,否则返回-1。
字符串序列.find(子串,开始位置下标,结束位置下标)注意:开始和结束下标可以省略,表示在整个字符串序列中查找。
字符串序列.index(子串,开始位置下标,结束位置下标)
- 字符串序列.count(子串,开始位置下标,结束位置下标)
-
- name = 'gyq123456'
- print(name.find('2',3,6)) #4 不存在返回-1
-
- print(name.index('5')) #7 不存在报错
-
- print(name.count('2')) #1 返回0
- name = 'my name is gyq gyq gyq'
- # 将gyq替换为GG
- rename = name.replace('gyq','GG')
- print(rename)
-
- # 还可以加长替换的数量 默认全部替换
- rename = name.replace('gyq','GG',3)
- print(rename)
- list = name.split() #括号选取什么字符作为分隔符
- print(list)
- mylist = ['aa','bb','cc']
-
- #aa...bb...cc
- new_str = '-'.join(mylist) #连接符'_'可以换成其他任意字符
- print(new_str)
- mystr = "gyq is Bu Ti fou"
- print(mystr.capitalize()) #Gyq is bu ti fou
- mystr = "gyq is tu ti fou"
- print(mystr.title()) #Gyq Is U Ti Fou
- mystr = "gyQ Is bu ti ASD"
-
- print(mystr.lower()) #gyq is bu ti asd
- mystr = "gyq is bu ti asd"
-
- print(mystr.upper()) #GYQ IS BU TI ASD
- mystr = " gyq "
- print("这是原始的",mystr)
- new_str = mystr.lstrip()
- print(f"这是删除左侧空白字符的{new_str}")
- new_str1 = mystr.rstrip()
- print(f"这是删除左侧空白字符的{new_str1}")
- new_str2 = mystr.strip()
- print(f"这是删除左侧空白字符的{new_str2}")
- mystr = 'hello'
-
- mystr.ljust(10,'.') #左对齐,定义长度,以点填充
- 'hello.....'
- mystr.rjust(10,'.') #右对齐,定义长度, 以点填充
- '.....hello'
- mystr.center(10,'.') #居中对其, 定义长度,以点填充
- '..hello...'
- mystr = "HEeel worlsd and acabnv"
-
- print(mystr.startswith('HEeel'))
- mystr = "HEeel worlsd and acabnv"
-
- print(mystr.endswith('v'))
- print(mystr.isalpha()) #字符串中全部都是字母则返回True。
- mystr = "HEeelworlsdandacabnv"
- print(mystr.isalpha())
- print(mystr.isalpha()) #字符串中全部都是数字则返回True。
- mystr = "HEeelworlsdandacabnv1"
-
- print(mystr.isdigit())
- print(mystr.isalnum())
- mystr = "HEeelworlsdandac123abnv"
-
- print(mystr.isalnum())
- 列表序列.index(数据,开始位置下标,结束位置下标)
- index(): 返回指定数据所在位置的下标——如果查找的数据不存在则报错。
- name_list = ['TOM','gyq','GGG']
- print(name_list.index('TOM'))
-
- count(): 统计指定数据在当前列表中出现的次数
- name_list = ['TOM','gyq','GGG','TOM','TOM']
- print(name_list.count('TOM'))
-
- len(): 访问列表长度,即列表中数据的个数
- name_list = ['TOM','gyq','GGG','TOM','TOM']
- print(len(name_list))
- name_list = ['Tom','Lily','Rose']
-
- print('Tom' in name_list) #True
-
- #结果:False
- print('gyq' in name_list) #False
- name_list = ['Tom','List','ROSE']
-
- name = input('请输入您要注册的用户名:')
-
- if name in name_list:
- print("您输入的用户名已存在,请重新输入")
- else:
- print("用户名可用")
- name_list = ['Tom','Lily','ROSE']
-
- print("原始数据",name_list)
-
- name_list.append(['xiaoming'])
- print("增加数据",name_list)
- name_list = ['Tom','Lily','ROSE']
-
- name_list.extend(['xiaoming','123'])
- print("增加数据",name_list)
- name_list = ['Tom','Lily','ROSE']
- name_list.insert(0,['xiaoming','123'])
- print("增加数据",name_list)
- name_list = ['Tom','Lily','Rose']
-
- del name_list #或者del (name_list)
- print(name_list) #name 'name_list' is not defined
3、删除指定的数据
- name_list = ['Tom','Lily','Rose']
-
- del name_list[0] #或者del (name_list)
- print(name_list)
pop() -- 删除指定下标的数据,如果不指定下标,默认删除最后一个数据
- name_list = ['Tom','Lily','Rose']
-
- del_name=name_list.pop()
- print(del_name)
remove(数据) #括号里面需要添加要删除的数据
- name_list = ['Tom','Lily','Rose']
-
- name_list.remove('Tom')
- print(name_list)
- name_list = ['Tom','Lily','Rose']
-
- # 1.修改指定下标是的数据-先找到下标元素然后重新赋值
- name_list[0] = 'aaa'
- print(name_list)
- # 3.sort
- list = [1,3,2,5,6,8,]
- list.sort()
- print(list)
降序——sort(reverse=True)
- list = [1,3,2,5,6,8,]
- list.sort(reverse=True)
- print(list)
- name_list = ['TOM','LILY','ROSE']
-
- list1 = name_list.copy()
-
- print(list1)
- print(name_list)
- list = ['gyq','gyq1','gyq2']
-
- i = 0
-
- while i < len(list):
- print(list[i])
- i += 1
- list = [['gyq','GGG','ggg'],['历经','娜扎','仙女'],['小红','小明','小路']]
-
- print(list[0][0]) #list[0]相当于普通列表的序列名
- # 定义多个数据的元组
- t1 = (10,20,30)
- print(t1)
- print(type(t1))
-
- # 单个数据的元组
- t2 = (1.2,)
- print(type(t2))
-
- # 如果单个数据的元组不加逗号,则数据类型是它本身
- t2 = (1.2)
- print(type(t2))
- t = (1,'aa','yy','qq')
- print(t.index('aa'))
- t = (1,'aa','yy','qq')
- print(t.count('aa'))
- t = (1,'aa','yy','qq')
- print(len(t))
- t = ('aa','yy','qq',['cc'])
- t[3][0] = 'gyqgyqgyq'
- print(t)