Python编程基础(3)

Python 有四种 数据结构,分别是: 列表、字典、元组,集合。每种数据结构都有自己的特点,并且都有着独到的用处。为了避免过早地陷入细枝未节,我们先从整体上来认识一下这四种数据结构:
列表list  =  [ val1 , val2 , val3 , val4 ]
字典dict  =  { key1: val1 , key2: val2 }
元组tuple  =  ( val1 , val2 , val3 , val4 )
集合set  =  { val1 , val2 , val3 , val4 }

从最容易识别的特征上来说,列表中的元素使用方括号扩起来,字典和集合是花括号,而元组则是圆括号。其中字典中的元素是均带有 “ : ” 的  key  与  value  的对应关系组。

一、列表(list)

        首先我们从列表开始,深入地讲解每一种数据结构。列表具有的最显著的特征是:

        1.列表中的每一个元素都是可变的;
        2.列表中的元素是有序的,也就是说每一个元素都有一个位置;
        3.列表可以容纳 Python 中的任何对象。

        列表中的元素是可变的,这意味着我们可以在列表中添加、删除和修改元素。

        列表中的每一个元素都对应着一个位置,我们通过输入位置而查询该位置所对应的值,试着输入:

Yin=['C','L','M']
print(Yin[0])

        第三个特征是列表可以装入 Python 中所有的对象,看下面的例子就知道了:

all=[
    1,            #整数
    1.0,          #浮点数  
    'Yin',        #字符串
    print(5),     #函数   
    True,         #布尔型   
    [1,2],        #列表    
    (1,2),        #元组
    {"key":1}     #字典   
]

1、列表的操作

(1)、增加

Yin=[1,3,4]
Yin.insert(1,2)
print(Yin)

在使用 insert 方法的时候,必须指定在列表中要插入新的元素的位置,插入元素的实际位置是在指定位置元素之前的位置,如果指定插入的位置在列表中不存在,实际上也就是超出指定列表长度,那么这个元素一定会被放在列表的最后位置。

(2)、删除

Yin=[1,3,4]
Yin.remove(1)
print(Yin)

(3)、修改

Yin[0]=2

(4)、索引

2、切片

        切片操作是访问序列中元素的另一种方法,它可以访问一定范围内的元素。通过切片操作可以生成一个新的序列。实现切片操作的语法格式如下:

Yin=[start:end:step]

        参数说明:
        Yin:表示序列的名称
        start:表示切片的开始位置(包括该位置),如果不指定,则默认为0。
        end:表示切片的截止位置(不包括该位置),如果不指定,则默认为序列的长度。
        step:表示切片的步长,如果省略,则默认为1,当省略该步长时,最后一个冒号也可以省略。

3、对列表进行统计与计算

(1)、获取指定元素出现的次数

        使用列表对象的 count() 方法可以获取指定元素在列表中的出现次数。基本语法格式如下:

Yin.count(obj)

(2)、获取指定元素首次出现的下标

        使用列表对象的 index() 方法可以获取指定元素在列表中首次出现的位置(即索引)。基本语法格式如下:

Yin.index(obj)

        参数说明:

        Yin:表示列表的名称
        obj:表示要判断是否存在的对象,这里只能进行精确匹配,即不能是元素值的一部分。

(3)、统计数值列表的元素和

         在Python中,提供了sumO)函数用于统计数值列表中各元素的和。语法格式如下: 

sum(Yin[,start])

        参数说明:

        Yin:表示要统计的列表。
        start:表示统计结果是从哪个数开始(即将统计结果加上start所指定数),是可选参数,如果没有指定,默认值为0。 

 二、字典

        编程世界中其实有很多概念都基于现实生活的原型,字典这种数据结构的特征也正如现实世界中的字典一样,使用名称一内容进行数据的构建,在Python 中分别对应着键(key)-值(value),习惯上称之为键值对。

        字典的特征:
        1.字典中数据必须是以键值对的形式出现的;
        2.逻辑上讲,键是不能重复的,而值可以重复;
        3.字典中的键(key)是不可变的,也就是无法修改的;而值(value)是可变的,可修改的,可以是任何对象。

        语法格式:

Yin={'key1':'value1','key2':'value2'}

        参数说明:

        Yin:表示字典名称;
        key1,key2:表示元素的键,必须是唯一的,并且不可变,例如可以是字符串、数字或者元组;
        value1,value2:表示元素的值,可以是任何数据类型,不是必须唯一。

1、遍历字典

        使用字典对象的 items() 方法可以获取字典的“键-值对”列表。其语法格式如下:

Yin.items()

        其中,Yin 为字典对象;返回值为可遍历的(键-值对)的元组列表。想要获取到具体的“键-值对”,可以通过 for 循环遍历该元组列表。

三、元组

        元组其实可以理解成一个稳固版的列表,因为元组是不可修改的,因此在列表中的存在的方法均不可以使用在元组上,但是元组是可以被查看索引的,方式就和列表一样:

letters=(1,2,3,4)
letters[0]

四、集合

        集合则更接近数学上集合的概念。每一个集合中的元素是无序的、不重复的任意对象,我们可以通过集合去判断数据的从属关系,有时还可以通过集合把数据结构中重复的元素减掉。

        集合不能被切片也不能被索引,除了做集合运算之外,集合元素可以被添加还有删除: 

  • 14
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值