python基础之列表和元组

python中内置的数据类型有列表(list)元组(tuple)字典(directory)。

1 list

list是一种可变的有序的集合。来看一个list实例:

#第一种方法:
>>> name=[‘liming‘,‘xiaohong‘,]
>>> name
[‘liming‘, ‘xiaohong‘]
#第二种方法:
>>> age=list([18,17,])
>>> age
[18, 17]

list有许多功能:

>>> name
[‘liming‘, ‘xiaohong‘]
>>> len(name)
2
>>> name.__len__()
2

查看list中元素的个数

>>> name
[‘liming‘, ‘xiaohong‘, ‘xiaoqiang‘]
>>> name[2]
‘xiaoqiang‘

查看索引值所对应的元素

>>> name
[‘liming‘, ‘xiaohong‘, ‘xiaoqiang‘]
>>> name.index(‘xiaohong‘)
1
#如果没有该元素,则会报错
>>> name.index(‘xiao‘)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: ‘xiao‘ is not in list

查看元素所对应的索引值

>>> name
[‘liming‘, ‘xiaohong‘, ‘xiaoqiang‘]
>>> name.append(‘xiaohuang‘)
>>> name
[‘liming‘, ‘xiaohong‘, ‘xiaoqiang‘, ‘xiaohuang‘]

追加元素到末尾

>>> name
[‘liming‘, ‘xiaohong‘, ‘xiaoqiang‘]
>>> name.insert(1,‘yefan‘)
>>> name
[‘liming‘, ‘yefan‘, ‘xiaohong‘, ‘xiaoqiang‘]

插入元素到指定索引位置

>>> name
[‘liming‘, ‘yefan‘, ‘xiaohong‘]
>>> result=name.pop()
#将最后一个元素赋值给result
>>> name
[‘liming‘, ‘yefan‘]
>>> result
‘xiaohong‘

删除最后一个元素

>>> name
[‘liming‘, ‘yefan‘, ‘xiaoqiang‘]
>>> name.pop(1)
‘yefan‘
>>> name
[‘liming‘, ‘xiaoqiang‘]

删除指定位置的元素

>>> name
[‘liming‘, ‘yefan‘, ‘xiaoqiang‘]
>>> name[1]=‘xiaohong‘
>>> name
[‘liming‘, ‘xiaohong‘, ‘xiaoqiang‘]

将某个元素替换成其他元素

>>> name
[‘liming‘, ‘xiaohong‘, ‘xiaoqiang‘]
>>> name.extend([‘yefan‘,‘heihuang‘,])
>>> name
[‘liming‘, ‘xiaohong‘, ‘xiaoqiang‘, ‘yefan‘, ‘heihuang‘]

追加列表到末尾

>>> name
[‘liming‘, ‘xiaohong‘, ‘xiaoqiang‘, ‘yefan‘, ‘heihuang‘]
>>> name.reverse()
>>> name
[‘heihuang‘, ‘yefan‘, ‘xiaoqiang‘, ‘xiaohong‘, ‘liming‘]

反转元素顺序

另外,list元素也可以是另一个list(字典也可以):

>>> name=[‘liming‘, ‘xiaohong‘, ‘xiaoqiang‘]
>>> age
[18, 17]
>>> name.append(age)
>>> name
[‘liming‘, ‘xiaohong‘, ‘xiaoqiang‘, [18, 17]]

2  tuple

是一种另类的list,但是他的功能相较于list要少,因为tuple不支持修改,也就是不支持append,pop,extend,insert……

定义一个tuple:

#第一种方法
>>> age=(1,3)
>>> age
(1, 3)
#第二种方法
>>> age=tuple((1,4,))
>>> age
(1, 4)

如果要定义一个空的tuple,可以写成()

>>> age=()
>>> age
()

但是,要定义一个只有1个元素的tuple,如果你这么定义:

>>> age=(1)
>>> age
1
>>> type(age)
<class ‘int‘>

定义的不是tuple,是1这个数!这是因为括号()既可以表示tuple,又可以表示数学公式中的小括号,这就产生了歧义,因此,Python规定,这种情况下,按小括号进行计算,计算结果自然是1

所以一般定义只有一个元素的tuple时,要加个逗号:

>>> age=(1,)
>>> age
(1,)

实际上tuple也是可变的,前文中所说的不可变指的是tuple元素不可变,但是tuple中的元素的元素是可以改变的。

>>> info=([‘liming‘,‘14‘,],[‘xiaohong‘,‘13‘,])
>>> info
([‘liming‘, ‘14‘], [‘xiaohong‘, ‘13‘])
>>> info[1][1]=12
>>> info
([‘liming‘, ‘14‘], [‘xiaohong‘, 12])

在这个例子中改变的不是tuple的元素,而是list的元素。

3  directory

字典是无序的由键值对组成的集合,元素可以是list tuple directory

定义一个字典:

>>> info={‘liming‘:16,‘xiaohong‘:12}
>>> info
{‘xiaohong‘: 12, ‘liming‘: 16}
#格式是一个唯一的键对应一个值。

但是,当第二次定义一个键时,会出现这种情况:

>>> info
{‘xiaohong‘: 12, ‘liming‘: 16}
>>> info={‘liming‘:16,‘xiaohong‘:12,‘liming‘:12}
>>> info
{‘xiaohong‘: 12, ‘liming‘: 12}

也就是第二个相同的键会覆盖掉第一个相同的键

字典的功能:

时间: 2024-10-14 07:01:45

python基础之列表和元组的相关文章

python基础三(列表和元组)

数据结构:数据结构是以某种方式(如通过编号)组合起来的数据元素集合.在python中,最基本的数据结构为序列,序列中每个元素都有编号从0开始. 1.序列概述:?python内置了许多种序列,列表.元组.字符串等.?列表和元组的不同在于,列表是可以修改的,而元组不可以,这意味着列表用于需要中途添加元素的情形,而元组适用于禁止修改元素的情形. 1.1.创建列表 假设你现在需要一个东西来储存多个名字,那么用列表正合适 list_name = ["王晓明","李二"] #所

2.python基础之—列表,元组,字典,集合,字符串的使用方法

一.关于python序列的简介. python里面的序列大部分都可以执行,索引,切片,加,乘,检查长度,以及检查某个成员是否存在,甚至还可以找出这个序列中最小的元素和最大的元素,并且序列都是可迭代的. 解释下个人理解的迭代,迭代(iteration),序列中的迭代就是对序列中的每个元素重复执行某些操作/ 具体的迭代方式后面会说到. 下面就说说python序列的共有特点. 1.索引 一个序列中,所有的元素都有自己的编号,这个编号是从0开始的,这个编号就是所谓的索引,这些元素可以通过索引来依次访问.

python基础9 列表,元组操作

本节内容: 1 列表 2 元组 3 参考网页 列表 Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素. 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作. 定义列表 names = ['Michael', 'Bob', 'Tracy'] 访问列表 通过索引访问 通过下标访问列表中的元素,下标从0开始计数. 使用索引时,千万注意不要越界. >>> names[0] 'Michael' >>

Python 基础之列表和元组

list Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素. 比如,列出班里所有同学的名字,就可以用一个list表示: >>> classmates = ['Michael', 'Bob', 'Tracy'] >>> classmates ['Michael', 'Bob', 'Tracy'] 变量classmates就是一个list.用len()函数可以获得list元素的个数: >>> len(c

Day2 - Python基础(列表,元组等)

本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1. 列表.元组操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 定义列表示例 1 names = ["ZhangYang"," Guyun"," Xiangpeng"," XuLiangChen"] 通过下标访问列表中的元素,下标从0开始计数 1 >>> names[0] 2 'Zh

Python基础之列表、元组、字典、集合的使用

一.列表 1.列表定义 names=["Jhon","Lucy","Michel","Tom","Wiliam"] 列表切片: names=["HeXin","ZhangLiang",["caijie","LiSi"],"LiYun","TianJun",'GuYun'] print(na

python基础知识-列表,元组,字典

列表(list) 赋值方法: l = [11,45,67,34,89,23] l = list() 列表的方法: 1 #!/usr/bin/env python 2 3 class list(object): 4 """ 5 list() -> new empty list 6 list(iterable) -> new list initialized from iterable's items 7 """ 8 def append

二、python基础之列表、元组

一.列表 列表的概念: 列表由一系列按特定顺序排列的元素组成.你可以创建包含字母表中所有字母.数字0-9或所有家庭成员姓名的列表:也可以将任何东西加入列表中,其中的元素之间没有任何关系.鉴于列表通常包含多个元素,给列表指定一个表示复数的名称(如letters.digits或names)是个不错的主意. 在python中,用方括号[]来表示,并用逗号来分隔其中的元素.下面介绍一下列表的基本用法 先创建以下两个列表: 1 list1 = [1,2,4,7,5,6] 3 list2 = [9,3,22

Python基础_列表、元组

列表 存放一组数据,可存取 names = ["kang","Lily","Mery"] print(names) #通过索引打印 print(names[0],names[1]) print(names[-1])#-1表示最后一位数 #切片 print(names[0:2]) print(names[0:-1])#打印一个范围,顾首不顾尾 print(names[0:])#打印出最后一个数,可省略不写 print(names[:])#列表数据全