Python中最基本的数据结构是序列sequence,其中有6种内建序列,常用的有字符串、列表、字典和元组。
字符串 String
拼接:+ 重复拼接: *
join 实现字符串的拼接 ; split 切分
join:“拼接符号”.join(待拼接字符串)
s1="a","b","c"
" ".join(s1)
输出:’a b c’
其他方法(对象.方法):
函数 | 功能 |
---|---|
strip | 去除字符串首尾两端的空格 |
find | 查找子字符串 |
lower,upper | 返回小写,大写 |
replace | 查找并替换 |
列表 list
创建空列表 list1 = []
包含数字、字符串 list2 = [1,2,”a”,”b”]
包含列表的列表 list3 = [[“c”,”a”],”r”]
list函数创建列表 list4 = list(“text mining”)
Out: [‘t’,’e’,’x’,……
改变列表元素 list5[1] = 6
删除列表元素 del list5[2]
添加列表元素的方法 append、extend、insert
append 给列表末端增加新的元素 list5.append(0)
extend 列表末端同时添加另一个序列中的多个元素 list5.extend(list4)
insert 将指定元素插入到列表的指定索引位置 list5.insert(4, “python”)
删除列表元素 pop insert
pop 删除指定索引位置的元素,默认为最后一个元素,返回值是被删除的元素
remove 删除列表中指定元值的元素,若有多个相同的元素,则删除第一个
查找某元素索引位置:index
列表元素排序:sort reverse
list.sort() 升序排列
list.reverse() 反转原有排序
统计某元素出现次数: list.count()
for… [if]…构建list
- 可从给定List中选出满足if条件的元素组成新的List(if可选)
a=[12, 3, 4, 6, 7, 13, 21]
b=['a', 'b', 'x']
newlist = [x for x in a if x%2==0 ]
Out: newList = [12,4,6]
2. 嵌套的for…[if]…语句。从多个List中选择满足if条件的元素组成新的List。
newList2=[(x, y) for x in a for y in b if x%2==0 and y<'x']
Out: newList2 = [(12, ‘a’), (12, ‘b’), (4, ‘a’), (4, ‘b’), (6, ‘a’), (6, ‘b’)]
list遍历
for i in list: # i是list元素
print ("序号:%s 值:%s" % (list.index(i) + 1, i))
for i in range(len(list)): #i是序号
print ("序号:%s 值:%s" % (i + 1, list[i]))
for i,val in enumerate(list): # (I,val)是元组tuple
print ("序号:%s 值:%s" % (i + 1, val))
for i,val in enumerate(list,2): #设置遍历开始初始位置,只改变了起始序号
print ("序号:%s 值:%s" % (i + 1, val))
元组 tuple
元组是不能修改的序列,()括起.可直接创建,或用tuple函数,把括号里的序列转换成元组
tuple1=tuple(list5)
字典 dict
用大括号“{}”括起。元素以“键(key):值(value)”的形式成对出现。
:表对应关系。键、值的顺序在字典中并不重要
直接创建 score= {“A”:”86”, “B”:”88”}
创建字典 score=dict( [ (“A”, “86”), (“B”, “88”) ] )
• 访问字典中键对应的值 字典[键] score[“A”]
• 为键赋值(可新增键值对) 字典[键]=值
容器 container
容器 collections模块中container
from collections import Counter Counter类:计数器
实例=Counter(序列或其他可迭代对象) 返回值 字典结构 键为元素, 值 元素出现次数
Counter([1,2,3,4,3,2,1]) Counter({1: 2, 2: 2, 3: 2, 4: 1})