字符串
1、拼接,Python支持负下标
print("helloworld!\n"*3)#输出为三行helloworld!
info="helloword"
print(info[0],info[len(info)-1])#h,d 输出第一个元素和最后一个元素
print(info[-1],info[-len(info)])#d,h输出最后一个元素和第一元素
2、切片:可以用来获取一段字符串
- 获取中间一段:需要三段–切两刀 info[第一刀的下标:第一刀的下标+获取的长度]
- 获取半段:切一刀
- 取前写后
- 取后写前
注意事项:
1、左含右不含
2、切片原本是什么类型,切出来还是什么类型
3、切片不会对原对象产生影响
4、切出来的新对象–另存新地址
info="name is tom"
#获取中间
print(info[5:5+3]) #从第5个元素到第5+3个:is
#获取后半段
print(info[-3:]) #最后3个元素:tom
#获取前半段
print(info[:4]) #前四个元素:name
元组
元组不支持修改,所以比较适合用查询地方较多的地方,当你只想让别人读你的数据,不想让他修改的话可以选择使用元组。
tule = (2,)#只有一个元素的元组要加上逗号
列表
列表可以存储任何类型,类类型。列表支持修改,有列表的增删查改操作
与元组一样,支持负下标,可以进行切片操作,规则与元组相同
1、append函数
2、insert函数
alist=[10,3.14,'hello',[8,20]]
#可以判断一个元素是否存在列表中:
print(8 in alist)#存在输出true不存在输出false;这里输出false
#8是列表中第四个元素中的元素,不是alist列表中的元素,这里需要注意
#1、某一个元素的修改,元素个数修改
alist[0]=100
#增加元素 append--在元素尾部增加
alist[-1].append(300)
#指定位置插入:insert--需要插入的位置、插入的值,两个参数
#如果insert插入的下标远远大于我们的len 相当于append,在尾部插入
alist.insert(1,20)
alist.insert(6,20)#相当于在尾部插入
3、del
3、pop函数
4、remove函数
alist = [10,20,30,20,40]
#删除20,30
del alist[1:1+2]
#删除20,40
del alist[1::2]
alist.pop(1)#有返回值--是你删除的值
print(alist.pop(1))
alist.remove(20) #效率是最低的,需要遍历找到了才能删除,只删除第一次出现的,不在这个列表,不能删除,会报错
删除的值在列表中有很多,只能删除一个,可以自己写一个循环
while 20 in alist:
alist.remove(20)
print(alist)
对列表中的元素进行倒序
#倒序操作--切片
info = 'abcde'
print(info[::-1])
步长
步长 默认是1,升序
[第一刀下标 : 第二刀下标:步长]
info = 'abcdefg'
print(info[1:1+3:2])#bd
#1是下标为1的元素,1+3是下标为1的元素向后数3个,每隔两个进行切片
#bcde 从切片开始的元素下标1开始,每隔两个进行切片 bd
合并
列表可以进行合并,可以理解为字符串的拼接
alist = [1,2]
blist = [3,4]
#1、另存不会影响原对象
clist = alist+blist
print(clist)#输出[1, 2, 3, 4]
#2、扩展列表元素--alist.append()
alist.append(4)
print(alist)# 输出[1, 2, 4]
扩展:有一个集合,学生,信息包括姓名,班级,性别,成绩,要求可以进行修改里面的内容
info = (('stu1',8,'女',80)
('stu1',9,'女',90))
#这个元组不能进行修改里面的信息,也不能增加一个学生的信息
info = (['stu1',8,'女',80]
['stu1',9,'女',90])
#这个元组可以进行修改里面学生信息,但是不能增加
info = [['stu1',8,'女',80]
['stu1',9,'女',90]]
#这个是最终的符合上述要求的,可以增加,也可以修改信息