列表与元组——Python基础语法
Python有六种标准的数据类型:Number、Tuple、String、List、Dictionary、Set
- 不可变数据(3个):Number、String、Tuple
- 可变数据(3个):Set、List、Dictionary
Number(数字)
Python3支持int、float、bool、complex(复数)
复数的实部a和虚部b都是浮点型
数值的除法包含两个运算符:/返回一个浮点数,//返回一个整数
在混合计算时,Python会把整数转换为浮点数
List(列表)
基本概念
- 列表是有序的元素集合,所有元素放在一对中括号[ ]中,用逗号隔开,没有长度限制
- 列表索引值以0为开始值,-1为从末尾的开始位置
- 列表可以使用+操作符进行拼接,使用*进行重复
- 当列表元素增加或删除时,列表对象自动进行扩展或收缩内存,保证元素之间没有缝隙
列表元素可以通过索引访问单个元素
列表
列表可以完成大多数集合类的数据结构实现
列表中元素可以为不同数据类型,他支持数字,字符串甚至可以包含列表(所谓嵌套)
列表为可变类型数据
列表基本操作
列表操作符 | 操作符含义 |
---|---|
< list >*< 整数类型 > | 对列表进行整数次重复 |
len(< seq >) | 列表中元素个数 |
< list >[< 整数类型 >] | 索引列表中的元素 |
for< var >in < list >: | 对列表进行循环列举 |
< list >[< 整数类型>:< 整数类型>] | 取列表的一个子序列 |
< expr>in< list > | 成员检查,判断< expr >是否在列表中 |
< list1 >+< list2 > | 连接两个列表 |
列表相关方法
方法 | 方法含义 |
---|---|
< list >.count(x) | 返回元素x在列表中的数量 |
in | 判断指定数据在某个列表序列,如果在返回True,否则返回false |
not in | 判断指定数据不在某个列表序列,如果不在返回True,否则返回False |
增加:
append():列表结尾追加数据(列表序列.append(数据))
extend():列表结尾追加数据,如果数据是一个序列,则将这个序列的数据逐一添加到列表
insert():指定位置新增数据(列表序列.insert(位置下标,数据))
删除:
del(del 目标)
pop():删除指定下标的数据(默认为最后一个),并返回该数据(列表序列.pop(下标))
remove():移除列表中某个数据的第一个匹配项(列表序列.remove(数据))
clear():清空列表
修改:
- 修改指定下标数据
- 逆置:reverse()
- 排序:sort()(列表序列.sort(key=None,reverse=False)).reverse表示排序规则,reverse=True降序,reverse=False升序(默认)
遍历:
- while循环
- for循环
列表嵌套
列表推导式
list_x=[1,2,3,4,5,6,7]
list_y=[i**2 for i in list_x]
# for i in list_x:
# list_y.append(i**2)
print(list_y)
创建列表:
>>>list((3,5,7,9,11)) #将元组转换为列表
[3,5,7,9,11]
>>>list(range(1,10,2)) #将range对象转换为列表range(开始,结束,步长)
[1,3,5,7,9] 从1到10(不包括10)每次加2
>>>list('hello world') #将字符串转换为列表,每个字符转换为列中的一个元素
['h', 'e' ,'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd' ]
>>>list({3,7,5}) #将集合转换为列表,集合中的元素是无序的
[3,5,7]
>>>x=list() #创建空列表
>>>x=[1,2,3]
>>>del x #删除列表对象
>>>x #对象删除后无法再访问,抛出异常
相关代码:
data=list(range(10)) #列表为从1到10(不包括10)的数字
print(data[-1]) #-1表示最后一个元素的下标
print(data[15]) #15不是有效下标,抛出异常
List=['YYQX','yyqx','XiZi']
print('YYQX'in List) #True
print('Yyqx'in List) #False
List=['Yyqx','yyqx','YyQx']
List.append([11,22])
print(List)
List.append('[11,22]')
print(List)
输出:
['Yyqx', 'yyqx', 'YyQx', [11, 22]]
['Yyqx', 'yyqx', 'YyQx', [11, 22], '[11,22]']
List=['Yyqx','YYQX','YYqx']
List.extend(['YyQx','YYQx'])
print(List)
#extend()追加数据是一个序列,把数据序列里面的数据拆开然后逐一追加到列表的结尾
输出:
['Yyqx', 'YYQX', 'YYqx', 'YyQx', 'YYQx']
List=['Yyqx','YYQX','YYqx']
List.extend('I Like YYQX')
print(List)
输出:
['Yyqx', 'YYQX', 'YYqx', 'I', ' ', 'L', 'i', 'k', 'e', ' ', 'Y', 'Y', 'Q', 'X'
list1=[1,2,3,4,5]
list1.reverse()
print(list1)
输出:
[5, 4, 3, 2, 1]
list1=['yyqx','YYQX','YyQx']
i=0
while i <len(list1):print(list1[i])i+=1
输出:
yyqx
YYQX
YyQx
list1=['yyqx','YYQX','YyQx']
for i in list1:print(i)
输出:
yyqx
YYQX
YyQx
list=[['Y','Y','Q','X'],['y','y','q','x'],['Y','y','Q','x']]
print(list[2])
print(list[1][2])
输出:
['Y', 'y', 'Q', 'x']
q
Tuple(元组)
基本概念
- 元组是包含多个元素的类型,元素之间用逗号分割(如:t1=(123,456,“hello”))
- 可以通过把若干元素放在一对圆括号( )中创建元组,如果只有一个元素的话则需要多加一个逗号(如:(3,)),否则这个唯一的数据是什么类型,这整个元组就是什么类型
- 也可以使用tuple()函数把列表、字典、集合、字符串以及range对象、map对象、zip对象或者其他类似对象转换为元组
- 元组可以是空的,t2=()
- 一个元组也可以作为另一个元组的元素,此时,作为元素 的元组需要增加括号,从而避免分歧(如:t3=(123,456,(“hello”,“world”)))
- 元组各元素存在先后关系,可以通过索引访问元组中的元素
- 元组内的数据是不能修改的
- 与字符串类型类似,可以通过索引区来访问元组中的部分元素
- 如果元组里边有列表,修改列表里面的数据是支持的,但是修改元组内的直接数据会立即报错
- 与字符串一样,元组之间可以用+号和*号进行运算
切片操作
适用于列表、元组、字符串
切片是用来获取列表、元组、字符串等有序序列中部分元素的一种语法。在形式上,切片使用2个冒号分隔的3个数字来完成
[start:end:step]
其中第一个数字start表示切片开始位置,默认为0;第二个数字表示切片截止(但不包含)位置(默认为列表长度);第三个数字表示切片的步长(默认为1),省略步长时还可以同时省略最后一个冒号
当step为负整数时,表示反向切片,这使start应该在end的右侧
查找:
- 按下标查找数据
- index():查找某个数据,如果数据存在返回对应的下标,否则报错。语法和列表、字符串的index()方法相同
- count():统计某个数据在当前元组出现的次数
- len():统计元组中数据的个数
相关代码
data=list(range(20))
print(data[ : ]) #获取所有元素的副本
print(data[-3: ]) #最后3个元素
print(data[ : -5]) #除最后5个元素之外的所有元素
tuple1=(10)
print(type(tuple1))
tuple2=(10,)
print(type(tuple2))
输出:
<class 'int'>
<class 'tuple'>
列表与元组——Python基础语法相关推荐
- python:python基础语法三,列表、元组、字典、集合
python基础语法 文章目录 python基础语法 列表(list) 列表简介 切片 列表修改元素 列表的方法 遍历列表 序列(sequence) 序列的基本操作 range()函数 EMS(Emp ...
- 从列表中切片最佳英雄组合,我的选择是亚索和李青——补充python基础语法有关数字类型和列表的知识
本文继续补充个人对python基础语法的理解,这里主要讲数字类型和列表~ 目前还不算初级程序员把,但是一洗头就掉头发,现在都不敢洗头了~ 数字类型 python中的数字类型:int(整型).float ...
- Python基础语法day02字符串详解和列表
今天是python基础语法入门第二天,大概总共会有四天左右.四天后就是对于python的numpy库的详细文章.那话不多说,我们开始. 目录 字符串详解 字符串独有功能 检测头尾字符 判断输入结果是否 ...
- python基础语法(二)列表
往期推荐: python基础语法(一)range函数 python基础语法(二)列表 前言 一.列表的创建与删除 二.列表的查询操作 1. 获取列表中指定元素的索引 2. 获取列表中的单个元素 3. ...
- Python基础语法【列表】
Python基础语法[列表] 一.认识列表 1.什么是列表(list) 1)列表是python提供的容器型数据类型:将[]作为容器的标志,里面多个元素用逗号隔开:[数据1,数据2,-] [数据1,数据 ...
- python语法基础学习-Python基础语法精心总结!看完都知道的可以往下继续学习了...
原标题:Python基础语法精心总结!看完都知道的可以往下继续学习了 这应该是最详细的Python入门基础语法总结! 定义变量,使用变量 1. input 用户自己输入值 2. print 打印值 可 ...
- python变量类型-【干货】Python基础语法之变量类型
原标题:[干货]Python基础语法之变量类型 还没关注? 01 Python编码 Python中默认的编码格式是 ASCII 格式,在没修改编码格式时无法正确打印汉字,所以在读取中文时会报错. 解决 ...
- python基础语法有哪些-Python基础语法知识有哪些?
相信大家都听过Python除了不会生孩子,基本上无所不能的段子,这一定程度上反映了目前Python编程语言的火爆程度和广泛应用.然而,对于许多零基础的Python学习者来说,常常会遇到无从学起,找不到 ...
- python基础语法合集-Python基础语法合集.zip
[实例简介]精心整理的Python基础语法合集,变量,循环,输入输出等等都有,主要是知道概念和怎么用的 如果打开文件后有文字变成符号的,先把字体改为宋体就正常了 [实例截图] [核心代码] 目录 了解 ...
最新文章
- Eclipse上安装GIT插件EGit及使用
- mysql获取后一天_MySQL根据某一Date值获取相关时间(前一天,后一天等)
- Appium wait等待的三种方法
- JS制作日历小事件和数码时钟--JavaScript实例集锦(初学)
- Moorhuhn Kart 2 XXL Maps
- ubuntu远程桌面连接windows系统
- Qt Q_ENUM使用 枚举字符串互转
- 第5-5课:最大流问题(图文篇)
- 手机mtkcdc端口如何开启_联想手机MTK线刷设置PreLoader端口的方法
- django urls import views报错
- 史丰收速算-第五届蓝桥杯省赛
- 安徽新科技计算机学校是高中吗,2021最新安徽高中排名一览表 所以高中学校
- shared_ptr,weak_ptr,unique_ptr
- Mac 下如何添加网段
- lms算法的verilog实现_基于FPGA和LMS算法的系统建模
- 浅谈:6sigma与Minitab_北京八方在线Minitab代理商
- 喜报!签约招商证券,字根科技错别字检测再创佳绩
- Processing 案例 | 用粒子系统谱写冰与火之歌
- 【Android】多渠道打包与签名机制
- signature=fd1093c9205f8af457ccc5f1d3251c78,An FDTD method for ELFE propagation in seawater.
热门文章
- eclipse错误及解决方法
- java 十六进制数的转换
- 【声波传钱】支付宝新功能 “声波支付” 自动售货机已投入试运
- 程序员面试金典——3.6双栈排序
- 台大李宏毅Machine Learning 2017Fall学习笔记 (8)Backpropagation
- Leetcode 200.岛屿数量
- word中插入emf,svg图像的注意事项
- pytorch: 网络层参数初始化
- EXCEL VBAProject密码破解 工作表密码破解
- Taints和Tolerations联用,将pod部署到k8s的master节点