pythonalist是什么意思_3. Python3轻食丨一个故事看懂List所有用法:1年级1班的班级生活...

List(列表)知识:1年级1班的班级生活

1.1 列表是个啥:List(列表)的基础知识:

今天我们来讲Python六大数据类型的第一种:List(列表)。本文将引入一个1年级1班的班级故事,本故事将贯穿教程始末,力求让每一个小知识点第一次出现在你面前时,都是灵活而可爱的。通过本文的学习后,你就能掌握关于List(列表)的所有相关知识了。那,跟着我一起看下好不啦?

A.List是啥?

a. List属于序列:序列共有 List 、 Turple 、 字符串 、 Unicode字符串 、 buffer对象 和 xrange对象 六种,所有序列都存在内部的索引(将在后文提及)。

b. List属于标准数据类型:Python标准数据类型共有 Number(数字) 、 String(字符串) 、 List(列表) 、 Turple(元组) 、 Set(集合) 、 Dictionary(字典) 六类。

B.List有啥特征?

我们先来看几个List(序列)长啥样:

>>> a = ['Think','123456','[1,2,3]']

观察可以看到:

a. 序列的基本结构为:变量 = [ ] ,即变量 、= 和 []。

b. 序列内的数据类型:不要求一致,可以有多种并存,甚至一个List里面还可以包含其他List。被包含的"子List"此时作为“母List”的元素。

c. 序列内的元素:序列内的内容为元素,元素数目可以为0,即空集 a = [] ;元素之间用 , 分隔开;如果元素为字符串,应用 ’ 或者 " 括起来。

C. 序列可以进行的基本操作:最基础的基本操作一共有五种:索引 、切片、加、乘、 检查,将在后文中进行详细解释。

1.2 可以对列表做啥:List(列表)的操作

a. 创建:1年级1班开学了!

我们假设1年级1班开学了,一共有李布尔、王多鱼、苏大强三名小朋友入学。我们简称1年级1班的班名为one,现在我们要打印出这个班级的同学名单:

>>> one = ['李布尔','王多鱼','苏大强'] >>> one ['李布尔', '王多鱼', '苏大强']

用中括号[ ]创建一个列表赋给one。当然班级也可以没人,比如隔壁1年级2班没人,list可以是空的:

>>> two = []

>>> two

[]

b. 计数 :班里有几个人?

这时候老师想知道1年级1班有几个人,三个人很容易数出来,可如果想知道全校的人数呢?需要调用 len(班级名) 这个语句来计数列表内的元素长度(数目):

>>> one = ['李布尔','王多鱼','苏大强'] >>> len(one) 3

注意:空list也可以用len,空list长度为0。比如我们看看惨淡的1年级2班:

>>> two = [] >>> len(two) 0

c. 访问元素:班里都是按学号点名的!

在学校里,每名同学都有自己的学号,这就是列表中的元素索引。

学号的制定规律:

1.在一个有人的班级中,每名同学都有两个学号(即索引),这个学号是以他们在整个班级中的相对位置确定的。

2.正数第一位学号为0,正数第二位学号为1…倒数第一位学号为-1,倒数第二位学号为-2。即:正数索引为n-1,倒数索引为-n。

比如以1年级1班为例:

>>> one = ['李布尔','王多鱼','苏大强']

王多鱼是正数第一位同学、倒数第三位同学。所以他的学号就有0和-3两个。

当老师想点名的时候,要用班级名[学号]的方式点学号。例如点二号同学:

>>> one = ['李布尔','王多鱼','苏大强']

>>> one[2]

'苏大强'

如果老师想知道某个同学的姓氏怎么办?对于列表内的元素我们还可以继续切割:

>>> one = ['李布尔','王多鱼','苏大强'] # 查看 1年级1班 学号为 0 的同学姓名:

>>> name = one[0] # 取该姓名索引为0的字符:

>>> name [0]

'李'

如果老师想叫多位同学,比如想叫从1号开始后面的所有同学呢?

>>> one = ['李布尔','王多鱼','苏大强']

>>> one[1:]

['王多鱼', '苏大强']

我们可以看到,就成功把1号和2号同学叫出来了。这里用的是切片的方式,即班级名[从第几号学生开始:截止到第几号学生之前],从第n号开始的全部可以用班级名 [n:],截止到n号之前的全部可以用班级名[:n]。

d. 追加元素 :1年级1班的新生

班里转来了一名新生,叫史晓明。我们用班级名.append(新同学名字) 的方式将他添到班级名单里,按照先来后到的规则,他自然排在最后:

第一种情况:默认添加新元素到列表末尾

>>> one = ['李布尔','王多鱼','苏大强']

>>> one.append('史晓明')

>>> one

['李布尔', '王多鱼', '苏大强', &

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值