目录
一.python字符串
在 Python 中,字符串就是一串字符的组合,它是不可变的、有限字符序列,包括可见字符、不可见字符(如空格符等)和转义字符。Python 通过 str 类型提供大量方法来操作字符串,如字符串的替换、删除、截取、复制、连接、比较、查找、分隔等。
1.1定义字符串
(1) 单行字符串
在 Python 中,使用单引号(')和 双引号(")可以定义字符串,注意是成对出现。
单引号和双引号常用于表示单行字符串,也可以在字符串中添加换行符(\n)间接定义多行字符串。在使用单引号定义的字符串中,可以直接包含双引号,而不必进行转义,而在使用双引号定义的字符串中,可以直接包含单引号,而不必进行转义。
(2) 多行字符串
单引号、双引号定义多行字符串时,需要添加换行符\n,而三引号不需要添加换行符。
同时字符串中可以包含单引号、双引号、换行符、制表符,以及其他特殊字符,对于这些特殊字符不需要使用反斜杠(\)进行转义。另外,三引号中还可以包含注释信息。
三引号可以帮助开发人员从引号和转义字符的泥潭里面解脱出来,确保字符串的原始格式。但是平时我们使用得最多的还是单行字符串,三引号一般用于函数注释、类注释、定义 SQL 语句等,读者可以在 源码中看到大量三引号的应用。
(3) 使用 str() 函数
使用 str() 函数可以创建空字符串,也可以将任意类型的对象转换为字符串。
1.2转义字符串
在 Python 字符串中如果显示特殊字符,必须经过转义才能够显示。例如,换行符需要使用 \n
表示,制表符需要使用 \t
表示,单引号需要使用 \'
,双引号需要使用 \"
表示,等等。
转 义 序 列 | 含 义 |
\newline(下一行) | 忽略反斜杠和换行 |
\\ | 反斜杠(\) |
\’ | 单引号(’) |
\" | 双引号(") |
\a | ASCII 响铃(BEL) |
\b | ASCII 退格(BS) |
\f | ASCII 换页(FF) |
\n | ASCII 换行(LF) |
\r | ASCII 回车(CR) |
\t | ASCII 水平制表(TAB) |
\v | ASCII 垂直制表(VT) |
\ooo | 八进制的 ooo 的字符。与标准C中一样,最多可接收3个八进制数字 |
\xhh | 十六进制值 hh 的字符。与标准C不同,只需要2个十六进制数字 |
\N{name} | Unicode 数据库中名称为 name 的字符。【提示】:只在字符串字面值中识别的转义序列 |
\uxxxx | 16 位的十六进制值为 xxxx 的字符。4个十六进制数字是必需的。【提示】:只在字符串字面值中识别的转义序列 |
\Uxxxxxxxx | 32 位的十六进制值为 xxxxxxxx 的字符,任何 Unicode 字符可以这种方式被编码。8个十六进制数字是必需的。【提示】:只在字符串字面值中识别的转义序列 |
二.列表
数组:存储同一种数据类型的集合 score=[12,13,14]
列表(被称为打了激素的数组):可以存储任意数据类型的集合(一个变量中可以存储多个信息)
#列表里面也可以嵌套列表(列表也是一种数据类型)
(1)列表的特性:
索引
print service[0]
print service[-1]
切片
print service[::-1] #列表的翻转
print service[1:] #除了第一个元素的其他元素
print service[:-1] #除了最后一个元素的其他元素
重复
print service * 3
列表中嵌套列表
例如:
service = [['http',80],['ssh',22],['ftp',21]]
print service[0][1]
切片
例如:
print service[:][1]
print service[:-1][0]
print service[0][:-1]
(2)列表的增加:
方法一:print service + ['firewalld']
方法二:service.append('firewalld')
print service
#append:追加,追加一个元素到列表的结尾
方法三:service.extend(['mysql','firewalld'])
#extend:拉伸,追加多个元素到列表的结尾
方法四:service.insert(1,'samab')
#insert:插入,在制定索引位置添加元素
(3)列表的删除:
方法一:print service.pop()
print service.pop(0) #传递索引值
#如果pop()不传递值的时候,默认弹出最后一个元素
方法二:service.remove('ssh')
#remove:删除指定元素
方法三:del service
#del:是一个关键字,从内存中删除整个列表
(4)列表的修改:
方法一:service[0] = 'mysql'
print service
#通过索引,重新赋值
方法二:service[:2] = ['XX','YY'] #把列表的前两个元素替换成XX和YY
print service
(5)列表的查看:
方法一;print service.count('XX')
查看列表中XX元素出现的次数
方法二:print service.index('XX')
查看指定元素的索引值(最小)
三.元组
元组本身是不可变数据类型,没有增删改查,元组内可以存储任意数据类型。
(1)元组的特性:
索引:
print t[0]
peint t[-1]
切片:
print t[:-1]
print t[::-1]
重复:
print t * 次数
连接:
print t + ('s1','s2')
(2)元组的应用场景:
变量交换数值:
b,a = a,b
元组的排序:
t= sorted(元组名)
元组的赋值:
有多少个元素,就用多少个变量接收
四.字典
字典是一个无序的数据集合,用print输出字典的时候,通常输出顺序和定义顺序不同
方法一:
m = {
'name':'sun',
'age':18,
'height':180
}
方法二:
s = {
'name':['sun','bo','ya'],
'age':['18','13','20']
}
方法三:
d = dict(a=1,b=2)
(1)字典的特性:
成员操作符:
##默认判断key值是否存在
print 'a' in d
print '1' in d
for循环:
##默认循环遍历字典的key值
方法一:for k,v in d.items():
print k,'-->',v
方法二:for k in d:
print k,'-->',d[k]
(2)字典的增加或更改key-value对:
增加或更改单个:d['key'] = value
增加或更改多个:d.update({'key1':value1,'key2':value2})
(3)字典的删除:
方法一:
d.pop('key')
#弹出指定key-value值
方法三:
del d['key']
#删除指定key-value值
(4)字典的查看:
查看所有key值:print d.keys()
查看所有value值:print d.values()
查看所有key-value值:print d.items()