前述:
#什么是方法,对象调用方法===》lis.append()
#什么是函数,函数 直接 对象===》del lis[0]
内容:
1.列表[]的增删改查,列表的运算符,可用函数
2.元组()的增删改查,元组的运算符,可用函数
3.字符串“”的增删改查
dir(序列名),查一个对象,可以使用哪些方法
li =["url1", 'url2', 'url3']
print(dir(li))
返回的结果:[4, 3, 2, 1, 222]
['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']
列表
1.列表[ ]的增删改查
列表的增:3种方法----append
#append 的用法:li.append(),括号里面每次只能增加一个元素(加到末尾),但是一个元素可以是不同的数据类型,如int float str list tuple。使用如下:
li = [4, 3, 2, 1]
li.append(222)
print(li)
返回的结果:[4, 3, 2, 1, 222]
增:3种方法----insert
#insert 的用法: li.insert(索引序号,插入的元素)
li = [4, 3, 2, 1]
li.insert(0,"哈哈")
print(li)
返回的结果:['哈哈', 4, 3, 2, 1]
增:三种方法---extend
extend 的用法:li.extend(需要插入的元素),
1.这里插入的元素,元素里面的组成部分都会被一一拆解,再一一加入
2.每次extend只能加入一个元素
a = [1, 2, 3]
b = ['a', 'b', 'c']
c = "hello world"
a.extend(b)
print(a)
返回的结果:[1, 2, 3, 'a', 'b', 'c']
a.extend(c)
print(a)
返回的结果:[1, 2, 3, 'h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd']
列表的删除:
4种方法----pop,删除指定下标的值,并返回该值
pop(下标)
1.如果()不带下标,则删除最后一个元素。
li =["url1", 'url2', 'url3']
li.pop()
print(li)
返回的结果:['url1', 'url2'] # 删除了末尾url3
2.如果()带参数,则删除指定的位置。在删除的时候,会把这个元素取出来
li =["url1", 'url2', 'url3']
print(li.pop(0)) # li.pop(0) 是能返回取出删除内容的
print(li)
返回的结果:
url1 #删除(取出)的内容
['url2', 'url3'] #删除后的 li 内容
4种方法----remove,删除元素
用法:li.remove(指定元素)
li =["url1", 'url2', 'url3']
li.remove("url1")
print(li)
返回的结果:['url2', 'url3']
4种方法----clear,直接清空列表
用法:li.clear()
li =["url1", 'url2', 'url3']
li.clear()
print(li)
返回的结果:[] # 返回空
4种方法----函数del,不但可以删除元素,还可以删除列表本身
用法del li[可删除指定位置的元素]
1.删除指定位置
li =["url1", 'url2', 'url3']
del li[0]
print(li)
返回的结果:['url2', 'url3']
2.直接删除列表
li =["url1", 'url2', 'url3']
del li
print(li)
返回的结果:NameError: name 'li' is not defined #报错
列表的查询:index 查下标,count 计数
#查 index,查询元素所在的位置(查询元素,起始位置,结束位置)
# 注意起始位置和结束位置,也是前闭后开,如下index('url3', 3, 5)的话,就会报错。
li2 = ["url1", 'url2', 'url3', 'url4', 'url5', 'url3']
print(li2.index('url3', 3, 6))
返回的结果 :5
# count,查询列表中指定元素出现的次数
li2 = ["url1", 'url2', 'url3', 'url4', 'url5', 'url3']
print(li2.count('url3'))
返回的结果:2
列表的改值
用法:lis[下标] = 新值,需要先查下标位置,再重新赋值
li2 = ["url1", 'url2', 'url3', 'url4', 'url5', 'url3']
li2[0] = "哈哈哈"
print(li2)
返回的结果:['哈哈哈', 'url2', 'url3', 'url4', 'url5', 'url3']
2.列表的基本操作符
3.列表可用的函数
元组 (tuple不可变类型)
元组只能查询和计数,元组本身不能增改。
如果元组只包含一个元素,则需要加一个逗号,如tup1 = (50,)
如果元组没有元素,可以直接为空元组,即()
元组的查询:index/count
元组之间的拼接(增):
a=(1,2,3)
b=(3,4,5)
a+b(1,2,3,3,4,5)
元组的删除:del---删除整个元祖
元组的运算符和内置函数
字符串(不可变类型)
查:find,count,index
字符串的查询:
count:
计算元素出现了多少次
str1 = "hello world"
print(str1.count('o'))
返回值:2
find:
从左往右找,如果包含子字符串,则返回最先找到的索引值,否则返回-1,这样优点就是不会报错。
str1 = "hello world"
print(str1.find('hell'))
返回值:0
index:
返回指定值的下标,没有会报错
str1 = "hello world"
print(str1.index('hellooo'))
返回值:ValueError: substring not found #报错
字符串的增
由于字符串是不可变类型,字符串的增,是多个字符串的拼接形成一个新的字符串。
增加:即拼接,用运算符+连接
a = "url2" + "url1"
print(a)
返回值:url2url1
字符串的删/改
字符串的删除 replace,也可以用作替换(用空替换)
replace(“原字符”,“新字符”),当用作删除时,新字符可以是空,即“”
a = "1111url2哈哈哈哈"
b = a.replace("1","")
print(b)
返回值:url2哈哈哈哈
split 切割
没有参数默认以空格来切割,切割完用列表形式打包给你class 'list'
分割一定是至少分成两部分,如果从最末端,就会分割成一个空格
str1 ="hello world im siri"
print(str1.split())
print(type(str1.split()))
返回值1:['hello', 'world', 'im', 'siri'] , 返回值2:<class 'list'>
strip:
去掉首尾指定的元素,每次只能去一种
如果只想单独去掉左/右边的,则用lstrip/rstrip
str1 =" hello world "
print(str1.strip())
返回值:hello world
str1 = "00000hello world00000"
print(str1.lstrip("0"))
返回值:hello world00000
改大小写:
upper/lower
判断:
islower/isupper:判断字符串中的值是否全是大小写
isdigit:判断一个字符串里的数据是不是都是数字
isalpha:判断每个元素是不是字母