Python编程 - 容器类型(字符串和列表)

目录

前言

一、字符串

(一)简介

(二)切片

(三)字符串常见操作

二、列表

(一)基本用法

(二)切片

(三)遍历

(1)for循环

(2)while循环

(四)列表的相关操作

(1)数据增加

(2)数据修改

(3)数据查询

(4)数据删除

总结


前言

本文讲述Python中的容器类型,容器类型主要有字符串、列表、元组和字典,不同的容器有不同的用法和作用,详细介绍如下。


一、字符串

(一)简介

带单引号或双引号的数据就是字符串,字符串中的每个字符在内存中单独存储,并且占有独立的空间,所以可以通过索引(下标)找到对于的字符,从左侧开始编号时,索引(下标)为正,并且从0开始编号;从右侧开始编号时,索引(下标)为负,并且从-1开始编号。

(二)切片

切片就是从被指定的对象中截取一部分数据的操作,由于字符串中的字符是独立存储的,所以字符串支持切片;

语法:指定对象[开始下标:结束下标:步长],  步长表示每次选取的间隔,步长为正时从左往右选取数据,步长为负,则是从右往左选取数据

注意:切片时无法取到结束下标,步长为正时只能取到结束小标-1,步长为负时只能取到结束下标+1。

testValue = "ABCDEFG"
print(testValue[0:2])  # 输出AB,未填步长则默认步长为1
print(testValue[:1:2])  # 输出A,未填起始下标则默认起始下标为0
print(testValue[1::1])  # 输出BCDEFG,未填结束下标则默认从起始下标取到结束

(三)字符串常见操作

testValue = "ABCDEFG"
# find,查找字符在原字符串中是否存在,存在则返回字符所在的下标,若不存在则返回-1
testValue.find('C')  # 结果为2
# rfind,与find方法用法类似,rfind方法是从右往左查找,并且返回正数时的下标
testValue.rfind('C')  # 结果为2
# count,查找指定字符在原字符串中出现的次数
testValue.count('A')  # 结果为1
# replace,将字符串中的指定字符替换成目标字符
testValue.replace('A', 'a')  # 结果为aBCDEFG
# split,将字符串按照指定字符进行拆分,返回的结果为列表,并且指定字符不存在与该列表中
testValue.split("B")  # 结果为['A', 'CDEFG']
# startswith,判断字符串是否以指定字符开头,若是则结果为True,否则为False
testValue.startswith("B")  # 结果为False
# endswith,判断字符串是否以指定字符结尾,若是则结果为True,否则为False
testValue.endswith("G")  # 结果为True
# lower,将字符串中的字符全部转为小写
testValue.lower()  # 结果为abcdefg
# upper,将字符串中的字符全部转为大写
testValue.upper()  # 结果为ABCDEFG
# strip,去除字符串头尾的空格
testValue.strip()  # 结果为ABCDEFG
# partition方法,将字符串按照指定字符进行拆分,返回的结果为元组,
# 该方法返回的元组中包含指定字符
testValue.partition("C")  # 结果为('AB', 'C', 'DEFG')
# splitlines,将字符串按行分割
testValue.splitlines()
# isalpha,判断字符串中的字符是否都为字母,是为True,否则为False
testValue.isalpha()  # 结果为True
# isdigit,判断字符串中的字符是否都为数字,是为True,否则为False
testValue.isdigit()  # 结果为False
# isalnum,判断字符串中的字符是否只包含字母和数字,是为True,否则为False
testValue.isalnum()  # 结果为True
# join,将指定对象中的每个元素用指定字符拼接起来
"-".join(testValue)  # 结果为A-B-C-D-E-F-G

二、列表

使用[]定义列表,列表可以存储不同类型的数据

(一)基本用法

通过下标即可访问列表中的元素

# 定义一个list列表
list = ['A', 'B', 'C', 'D', 'E']
# 通过下标访问列表中的元素
list[1]  # 结果为B

(二)切片

列表的切片与字符串的相同

# 定义一个list列表
list = ['A', 'B', 'C', 'D', 'E']
list[0:2]  # 结果为['A', 'B'],未填步长则默认步长为1
list[:1:2]  # 结果为['A'],未填起始下标则默认起始下标为0
list[3:1:-1]  # 结果为['D', 'C'],未填结束下标则默认从起始下标取到结束

(三)遍历

列表遍历就是依次获取列表中的元素,通过for循环和while循环即可实现列表遍历,示例如下:

(1)for循环

#使用for循环依次取出list列表中的元素
list = ['A', 'B', 'C', 'D', 'E']
for i in list:
    print(i)

结果为:

(2)while循环

# 使用while循环依次取出list列表中的元素
list = ['A', 'B', 'C', 'D', 'E']
i = 0
while i < len(list):
    print(list[i])
    i += 1

结果与for循环的相同:

(四)列表的相关操作

(1)数据增加

列表增加数据主要有三个方法:append,extend和insert,这三个方法都是往列表中添加添加元素,但是添加的方式不同:

  • append:往列表中的最末位添加元素
  • extend:将一个列表中的元素逐步添加到另一个列表中
  • insert:通过索引下标在列表中的指定位置添加元素

示例如下:

list_value = []
# 在list_value的索引为0的位置添加元素1
list_value.append(1)
print(list_value)
list2 = [2, 3, 4]
# 往list_value中逐步添加列表list2中的元素
# 并且list2列表不受影响
list_value.extend(list2)
print(list_value)
print(list2)
# 在list_value索引为4的位置添加元素5
list_value.insert(4, 5)
print(list_value)

结果输出为:

(2)数据修改

只能通过下标修改列表中元素的值,格式为:列表[下标]=新值

(3)数据查询

数据查询主要有两个作用,一个是查询列表中的元素个数,另一个作用是查询指定元素是否存在于列表中;

list = [1, 2, 3, 1]
list.count(1)  # 查询1在列表list中出现的次数,结果为2
2 in list  # 判断元素2是否存在于列表list中,结果为True
2 not in list  # 判断元素2是否不存在于列表list中,结果为False

(4)数据删除

数据删除就是将元素从列表中移除,删除的方法主要有三种:del、pop和remove,这三种方法都有各自删除数据的方式:

  • del:按照下标删除元素
  • pop:删除列表中的最后一个元素
  • remove:移除指定元素
list = [1, 2, 3, 1]
# 删除list中索引位3的数据,指定的索引值一定小于列表的元素个数
# 结果为list = [1, 2, 3]
del list[3] 
# 删除list列表中最后一个元素
# 结果为list = [1, 2]
list.pop()  
# 删除list列表中的元素2
# 结果为list = [1]
list.remove(2)  

总结

本文主要讲述了字符串和列表的概念和用法,不同的容器有不同的用法,在下一篇文章中会继续讲解元组和集合两个容器,让我们拭目以待吧!

  • 13
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值