python常见的内置数据结构
-
字符串(string)
-
由字符组成的有序的序列,是字符的集合
-
使用单引号’’、双引号""、三引号’’’’’'表示
-
有顺序、能索引、可迭代、元素能重复、不可变对象
-
python3中,字符串就是Unicode类型
-
字符串连接:
"分隔符".join(iterable)
,如:"".join(['1', '2', '3'])
。注意:可迭代对象iterable必须是字符串 -
字符串拼接:通过str + str 将两个字符串拼接得到一个新的字符串
-
字符串分割:
str.split(sep=None, maxsplit=-1)
,seq表示分割符,缺省默认为空格,maxsplit表示分割次数,-1表示遍历整个字符串;str.rsplit(sep=None, maxsplit=-1)
表示从右至左分割;str.splitlines([keepends])
按照换行符切分字符串,换行符('\r', '\r\n', '\n'
),keepends表示是否保留换行符,默认为False不保留,True则保留会输出换行符;str.partition(seq) -> (head, seq ,tail)
从左到右,遇到分割符就把字符串分割成两部分,返回头、分隔符、尾三部分;若没找到分隔符,就返回头和两个空元素的三元组;str.rpartition(seq) -> (head, seq ,tail)
从右至左分割;
-
字符串大小写:
str.upper()
全大写str.lower()
全小写str.swapcase()
交互大小写
-
字符串排版:
str.title()
标题的每个单词都大写str.capitalize()
首字母大写str.center(width[, fillchar])
字符串居中,并使用填充符(fillchar)填充至长度(width),填充符默认为空格str.zfill(width)
返回指定长度(width)的字符串,右对齐,左边前面填充0str.ljust(width[, fillchar])
字符串左对齐,并使用填充符(fillchar)填充至长度(width),填充符默认为空格str.rjust(width[, fillchar])
字符串右对齐,并使用填充符(fillchar)填充至长度(width),填充符默认为空格
-
字符串修改:
str.replace(old, new[,count])
字符串匹配固定字符进行替换,count表示替换次数,默认全部替换str.strip([chars])
字符串两端去除指定的字符集(chars),默认是空格str.lstrip([chars])
字符串去除左边指定的字符集(chars),默认是空格str.lstrip([chars])
字符串去除右边指定的字符集(chars),默认是空格
-
字符串查找:
str.find(sub[, start[, end]])
在指定区间[start, end]内,从左至右查找子串,找到返回索引,未找到返回-1str.rfind(sub[, start[, end]])
在指定区间[start, end]内,从右至左查找子串,找到返回索引,未找到返回-1str.index(sub[, start[, end]])
在指定区间[start, end]内,从左至右查找子串,找到返回索引,未找到抛出异常ValueErrorstr.rindex(sub[, start[, end]])
在指定区间[start, end]内,从右至左查找子串,找到返回索引,未找到抛出异常ValueError
-
字符串统计:
str.count(sub[, start[, end]])
在指定区间[start, end]内,从左至右统计子串sub出现的次数
-
字符串判断:
str.endswith(suffix[, start[, end]])
在指定区间[start, end]内,字符串是否是suffix结尾str.startswith(suffix[, start[, end]])
在指定区间[start, end]内,字符串是否是suffix开头str.isalnum()
是否是字母和数字组成str.isalpha()
是否是字母str.isdecimal()
是否包含十进制数字str.isdigit()
是否全是全部数字(0-9)str.isidentifier()
是否是仅包含字母、数字和下划线str.islower()
是否都是小写str.isupper()
是否都是大写str.isspace()
是否只包含空白字符
-
字符串格式化:
"This is %s" % "python"
"This is {}".format("python")
"This {0[0]} {0[1]}".format(("is","python"))
-
字符串翻倍:
str * n
,例如'py' * 3
结果是'pypypy'
-
-
列表(list)
-
一个排列整齐的队列,由若干个元素组成
-
元素可以是任意对象,数字、字符串、字典、元组、列表、对象等
-
列表内的元素有顺序,可以使用索引,元素能重复,可修改
-
是线性数据结构,使用中括号[]表示
-
列表初始化:
s = list()
或s = []
生成一个空列表s = list(iterable)
可将可循环的结构转化为列表,如:s = list(range(5))
、s = [1, 2, 3]
-
列表索引访问
list[index]
index即是list的索引,也叫下标,从左至右,丛0开始到列表长度减一(len(list)-1);若从右至左,索引从-1开始;索引不可以越界,否则抛出异常indexError
-