在基础数据类型的基础上,Python有6中数据集合的类型:
- 列表list,最常用的数据类型,以[]为标识
- 元组tuple,和list很相似,但是不能二次赋值,用()标识
- 集合set,和list类似,但是set中没有重复的元素,常用于集合间的运算,用{}标识
- 字典dict,无序的对象集合,字典中的元素通过关键词key来调用,同样以{}来标识
- 数组array,科学计算和代数运算常用的数据类型,在后续numpy库系列详细说明
- 数据框dataframe,数据分析处理常用的数据类型,在后续pandas库系列详细说明
print('这里定义了一个列表list——x1,注意到列表x1中的元素是可以不同的,这里由两个数字1和2,一个字符串James,一个列表[1,2,3]这四个元素构成了x1这个列表list。') x1 = [1,2, 'James', [1,2,3]] print(x1)
输出:这里定义了一个列表list——x1,注意到列表x1中的元素是可以不同的,这里由两个数字1和2,一个字符串James,一个列表[1,2,3]这四个元素构成了x1这个列表list。
[1, 2, 'James', [1, 2, 3]]
print('如何来调用列表x1中的某个或者某几个元素呢?? ') #这里的 的含义是空一行 print('调用列表x1的第一个元素(注意第一个元素的索引为0):',x1[0]) print('调用列表x1的最后一个元素(注意最后一个元素的索引为-1):',x1[-1]) print('调用列表x1的前2个元素(注意索引的时候右不包含):',x1[:2])
输出:
如何来调用列表x1中的某个或者某几个元素呢?? 调用列表x1的第一个元素(注意第一个元素的索引为0): 1 调用列表x1的最后一个元素(注意最后一个元素的索引为-1): [1, 2, 3] 调用列表x1的前2个元素(注意索引的时候右不包含): [1, 2]
这里要说明的是,python下序列(例如数组,列表,元组等)的索引,是从0开始而非从1开始。从左到右索引默认从0开始,从右到左索引默认从-1开始。
一般索引的方式为 序列[索引开始:索引结尾],且要注意python索引是右不包含,即索引结尾对应的元素是不包含在结果中的。
print('关于列表的运算 ') x2 = ['a','b','c'] print('将两个列表x1和x2拼接起来',x1+x2) x1.append('新增元素') print('在列表x1中添加一个元素',x1) print('将列表x2重复两遍',x2*2)
print('关于列表的运算 ') x2 = ['a','b','c'] print('将两个列表x1和x2拼接起来',x1+x2) x1.append('新增元素') print('在列表x1中添加一个元素',x1) print('将列表x2重复两遍',x2*2)
输出:
关于列表的运算 将两个列表x1和x2拼接起来 [1, 2, 'James', [1, 2, 3], 'a', 'b', 'c'] 在列表x1中添加一个元素 [1, 2, 'James', [1, 2, 3], '新增元素'] 将列表x2重复两遍 ['a', 'b', 'c', 'a', 'b', 'c']
''' append是在列表的末尾添加元素,那如果要在列表中间添加元素怎么做呢? ''' print('原列表:',x1) x1.insert(2,1000) print('在索引2位置添加了新的元素:',x1)
输出:
原列表: [1, 2, 'James', [1, 2, 3], '新增元素'] 在索引2位置添加了新的元素: [1, 2, 1000, 'James', [1, 2, 3], '新增元素']
''' 根据索引来删除列表中的元素 ''' print('原列表:',x1) x1.pop(3) print('删除索引3上的元素后:',x1)
输出:
原列表: [1, 2, 1000, 'James', [1, 2, 3], '新增元素'] 删除索引3上的元素后: [1, 2, 1000, [1, 2, 3], '新增元素']
''' 在列表中添加多个元素 ''' print('原列表:',x1) x1.extend([0,1,2,3,4,5,6]) print('添加多个元素后:',x1)
输出:
原列表: [1, 2, 1000, [1, 2, 3], '新增元素'] 添加多个元素后: [1, 2, 1000, [1, 2, 3], '新增元素', 0, 1, 2, 3, 4, 5, 6]
''' 根据元素值来删除元素 ''' print('原列表:',x1) x1.remove('新增元素') print('删除"新增元素"元素后:',x1)
输出:
原列表: [1, 2, 1000, [1, 2, 3], '新增元素', 0, 1, 2, 3, 4, 5, 6] 删除"新增元素"元素后: [1, 2, 1000, [1, 2, 3], 0, 1, 2, 3, 4, 5, 6]
x2 = [1,1,1,1,2,2,2,3,43,4,5,6,4] print('查看元素1在列表中出现的次数:',x2.count(1))
输出:
查看元素1在列表中出现的次数: 4
print('关于列表的排序 ') x3 = [-10,-2,1,-100,333,1000] print('原列表:',x3) x3.sort() print('按从小到大排序:',x3) x3.sort(reverse=True) print('按从大到小排序:',x3)
输出:
关于列表的排序 原列表: [-10, -2, 1, -100, 333, 1000] 按从小到大排序: [-100, -10, -2, 1, 333, 1000] 按从大到小排序: [1000, 333, 1, -2, -10, -100]