字符串
字符串或串(String --报错时,string/str)是由数字、字母、下划线等组成的一串字符。在 Python 中,字符串是用于表示文本的数据类型。
简单来讲,使用双引号(" ")或单引号(’ ')标识的数据,就是字符串。
例如:
a = 'qwe'
b = '123'
# 字符创可以使用拼接的方法连接内容
a + b = ‘qwe123’
替换
在 Python 中,字符串的替换操作常用函数如下:
capitalize() | 将字符串的第一个字母变成大写,其他字母变小写。 --标题化 |
---|---|
title() | 返回"标题化"的字符串,就是说所有单词都是以大写开始,其余字母均为小写。 |
lower() | 转换字符串中所有大写字符为小写。 |
upper() | 将字符串中的小写字母转为大写字母。 |
replace(old, new[, max]) | 把字符串中的 old(旧字符串)替换成 new(新字符串),如果指定第三个参数 max,则替换不超过 max 次。 |
split(sep[,num]) | 通过指定分隔符对字符串进行切片,如果参数 num 有指定值,则仅分隔 num 个子字符串,分隔后的结果为列表类型的值。 -->用于分隔数据; --正则表达式 |
splitlines([num]) | 按照行分隔,返回一个包含各行作为元素的列表,如果 num 指定则仅切片 num 个行。 |
partition(sep) | 把字符串以 sep 分隔成三部分:sep 前、sep 和 sep 后。 |
rpartition(sep) | 类似于 partition()函数,不过是末尾处开始分隔。 |
lstrip() | 删除字符串开始处的空白字符。 |
rstrip() | 删除字符串末尾处的空白字符。 |
strip() | 删除字符串两端的空白字符。 |
查找
find(sub[,st[,en]]) | 检测 sub 是否包含在字符串中,如果是,则返回 sub 所在开始的下标(索引)值,否则返回-1。 --好用 |
---|---|
rfind(sub[,st[,en]) | 类似于 find()函数,不过是从字符串的末尾处开始查找。 |
index(sub[,st[,en]) | 跟 find()方法几乎是一样的,只不过当 sub 不在字符串中时会报一个异常。 --异常处理 |
rindex(sub[,st[,en]) | 类似于 index()函数,不过是从字符串的末尾处开始查找。 |
count(sub[,st[,en]) | 返回 sub 在 start 和 end 之间且在字符串里出现的总次数。 |
比较
startswith(sep[,st[,en]]) | 检查字符串是否是以 sep 开头,若是则返回 True,否则返回 False。 |
---|---|
endswith(sep[,st[,en]]) | 检查字符串是否以 sep 结束,若是则返回 True,否则返回 False。 |
isalpha() | 若字符串中的所有字符都是字母,若是则返回 True,否则返回 False。 |
isdigit() | 若字符串中的所有字符都是数字,若是则返回 True,否则返回 False。 |
isalnum() | 若字符串中的所有字符都是字母或数字,若是则返回 True,否则返回 False。 |
isspace() | 若字符串中的所有字符都是空格,若是则返回 True,否则返回 False。 |
其他函数
ljust(width[,fillchr]) | 返回一个原字符串左对齐,并使用空格填充至长度 width 的新字符串。 |
---|---|
rjust(width[,fillchr]) | 返回一个原字符串右对齐,并使用空格填充至长度 width 的新字符串。 |
center(width[,fillchr]) | 返回一个原字符串居中,并使用空格填充至长度 width 的新字符串。 |
join(seq) | 用于将序列中的元素以指定的字符连接生成一个新的字符串。 |
列表:
两大特征:
①可以存放任意类型的数据
②长度可以发生改变
语法如下:
列表变量名 = [元素 1,元素 2,元素 3,...]
列表也是可以采用切片的,实例代码在原文一开始的时候
常用函数
查找元素
in | 表示某个元素是否在列表中,若存在则返回 True,否则返回 False。 |
---|---|
not in | 表示某个元素是否在列表中,若存在则返回 False,否则返回 True。 |
index(x) | 用于从列表中找出某个值第一个匹配项的索引位置。 |
count(x) | 用于统计某个元素在列表中出现的总次数。 |
添加元素
append(x) | 用于在列表末尾添加新的对象 x。 |
---|---|
extend(seq) | 用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)。 |
insert(index, obj) | 用于在指定位置 index 前插入元素 obj。 |
删除元素
del | 根据下标进行删除元素。 |
---|---|
pop([i]) | 弹出第 i 个元素,若省略 i,则弹出最后一个元素。 --弹栈 |
remove(x) | 用于移除列表中元素值 x 的第一个匹配项。 |
修改元素
sort([reverse]) | 将列表按特定顺序重新排列,默认排序为从小到大,参数 reverse=True 可改为倒序,即从大到小排序。 |
---|---|
reverse() | 将列表数据内容倒序。 |
切片
切片是指对操作的对象截取其中一部分内容的操作,实际上,字符串、列表、元组都支持切片操作。
使用语法如下:
[起始:结束] -->去掉了起始或结束,去掉起始,则默认表示从开始处进行切片;
或着
[起始:结束:步长] --对于上述的[起始:结束],默认步长就是 1 --步长就是指每隔 n 个元素切片一次
注意事项:一般在python语言中,一个范围的数一般都是左闭右包,例如:[1:3]表示的是在1~3范围内(不包括3),还有就是在range方法中,range(1,3)同样的表示1—3(不包括3)
代码演示:
a = ‘hello123’
a [1:3] #输出结果是:'el'
a [1:5:2] #输出结果是:'el'
#反转
a [::-1] = '321olleh'
切片一些高级的用法(插入元素)
list=[1,2,3,4,5,6,7,8,9]
list[len(list):]=[10] # 在尾部增添元素
print (list)
list[:0]=[1] # 在开头插入元素
print (list)
list[3:3]=[3] # 在中间插入元素
print (list)
list[:3]=[]
print (list)
元组
语法如下:
tuple = (1,a,‘da’)
一般情况下,我们在元组中最后一个元素后面添加一个逗号,以让别人一眼就能看出这是一个元组类型的数据。元组是一种不可添加,不可以更改的数据,一般情况下用来储存一些固定的信息资料。
注意事项:
a = (1,2,3,)
b = (4,5,6,)
a + b = (1,2,3,4,5,6,) #这不是说明元组元素是可以修改的,而是创建出了让一个元组。
下面顺便讲一个小知识点:
为什么python中能在 a, b = b,a 中实现a,b数据的交换呢?
下面来分析一下
a = 10
b = 9
a, b = b ,a 实际上相当于(a, b) = (b, a)
(a , b) = (9 , 10)
所有最后输出:
a = 9
b = 10
字典
字典由键和对应值成对组成。字典也被称作关联数组或哈希表。
注意:
每个键与值用冒号隔开(:),每对用逗号,每对用逗号分割,整体放在花括号中({})。
键必须独一无二,但值则不必。
值可以取任何数据类型,但必须是不可变的,如字符串,数或元组。
语法如下
dict = {'键1:'值,'键2:'值}
常用方法:
keys(),values()和items()方法:
这三个字典方法,将返回类似列表的值,分别对应字典的键,值,键值对。
这三种方法都是用在遍历过程,依依输出自己想要的值