2--Python入门--Python数据集合类型--列表
在基础数据类型的基础上,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中的某个或者某几个元素呢??\n') #这里的\n的含义是空一行
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('关于列表的运算\n')
x2 = ['a','b','c']
print('将两个列表x1和x2拼接起来',x1+x2)
x1.append('新增元素')
print('在列表x1中添加一个元素',x1)
print('将列表x2重复两遍',x2*2)
print('关于列表的运算\n')
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('关于列表的排序\n')
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]
2--Python入门--Python数据集合类型--列表的更多相关文章
- 【Python学习之四】集合类型
环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 python3.6 一.字符串:字符串实际上就是字符的数组1.切片是指 ...
- python入门学习:3.操作列表
python入门学习:3.操作列表 关键点:列表 3.1 遍历整个列表3.2 创建数值列表3.3 使用列表3.4 元组 3.1 遍历整个列表 循环这种概念很重要,因为它是计算机自动完成重复工作的常 ...
- python入门-python处理csv文件格式相关
python入门-python处理csv文件格式相关 处理 下载的csv格式文件 直接上代码和效果图 import csv from datetime import datetime from mat ...
- 4--Python入门--Python数据集合类型--集合
在基础数据类型的基础上,Python有6中数据集合的类型: 列表list,最常用的数据类型,以[]为标识 元组tuple,和list很相似,但是不能二次赋值,用()标识 集合set,和list类似,但 ...
- 3--Python入门--Python数据集合类型--元组
在基础数据类型的基础上,Python有6中数据集合的类型: 列表list,最常用的数据类型,以[]为标识 元组tuple,和list很相似,但是不能二次赋值,用()标识 集合set,和list类似,但 ...
- Python基础-字符串、集合类型、判断、深拷贝与浅拷贝、文件读写
字符串 1.定义三个变量: 2.交换两个变量值 1)引入第三个变量: 2)Python引入第三方变量: 3)不引入第三方变量: 3. isalpha 是否是汉字或字母 4.Isalnum 是否是汉字 ...
- 大爽Python入门教程 2-3 字符串,列表,字典
大爽Python入门公开课教案 点击查看教程总目录 除了通用的序列方法, 列表和字符串还有些自己的专属方法. 后面介绍有些是英中文对照介绍(英文来自官方文档), 便于大家更深入的去理解其意思. 灵活的 ...
- Python入门笔记(11):集合
一.目录 1.集合概述 2.关于集合的操作符.关系符号 3.集合的一系列操作(添加.更新.访问.删除) 4.关于集合的内建函数.内建方法 5.小结 二.集合概述 集合(set):把不同的元素组成一起形 ...
- Python基础:05集合类型
Python中,集合对象是一组无序排列的可哈希的值.所以集合成员可以做字典中的键.集合中的元素都是唯一的. 集合(sets)有两种不同的类型,可变集合(set) 和 不可变集合(frozenset). ...
随机推荐
- 第一阶段——站立会议总结DAY03
昨天忘记发了,补充... 1.昨天做了什么:继续做界面的设计,使其更加美观. 2.今天准备做什么:准备将点击按钮时跳转到一个修改密码界面. 3.遇到的困难:此次第一阶段的任务是一个框架,不知道可否实现 ...
- 【微信公众号开发】【8】网页授权获取用户基本信息(OAuth 2.0)
前言: 1,在微信公众号请求用户网页授权之前,开发者需要先到公众平台官网中的“开发 - 接口权限 - 网页服务 - 网页帐号 - 网页授权获取用户基本信息”的配置选项中,修改授权回调域名. 请注意,这 ...
- springBoot配置,贴个图
spring: datasource: name: test url: jdbc:mysql://localhost:3306/epay?characterEncoding=UTF-8 usernam ...
- 【转】大型Vuex项目 ,使用module后, 如何调用其他模块的 属性值和方法
Vuex 允许我们把 store 分 module(模块).每一个模块包含各自的状态.mutation.action 和 getter. 那么问题来了, 模块化+命名空间之后, 数据都是相对独立的, ...
- Mockito:一个强大的用于Java开发的模拟测试框架
https://blog.csdn.net/zhoudaxia/article/details/33056093 介绍 本文将介绍模拟测试框架Mockito的一些基础概念, 介绍该框架的优点,讲解应用 ...
- h5的坑
转自 http://www.mahaixiang.cn 解决各种坑 http://www.mahaixiang.cn/ydseo/1529.html
- 在用mybatis向MySQL数据库中插入时间时报错:Incorrect datetime value: '' for column '' at row 1
问题说明:使用的MySQL是5.1.37版本,用的mysql-connector-java-5.0.4.jar版本,在java文件中定义的字段是Date类型,MySQL中定义的字段类型是datetim ...
- cpu-z for ubuntu 12.04 64bit : cpu-g
wget https://launchpad.net/~phantomas/+archive/ppa/+files/cpu-g_0.9.0_amd64.deb sudo dpkg -i cpu-g*. ...
- python两个字典合并,两个list合并
1.两个字典:a={'a':1,'b':2,'c':3} b= {'aa':11,'bb':22,'cc':33} 合并1:dict(a,**b) 操作如下: 合并2:dict(a.items()+ ...
- UVa LA 3695 - Distant Galaxy 前缀和,状态拆分,动态规划 难度: 2
题目 https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_pr ...