继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

【学习打卡】第5天 Python的List容器

小白兔1215
关注TA
已关注
手记 55
粉丝 3
获赞 2

课程名称:Python3 入门教程(新版)

课程章节: Python的List容器

主讲老师:咚咚呛

课程内容

  • 什么是容器
  • 什么是List
  • 访问List元素
  • 增加元素
  • 删除元素
  • 修改元素
  • 多维List

课程收获

容器与列表

生活中,容器指的是可以容纳物品的收纳器,在程序中,容器是一种可以把多个元素放在一起的数据结构,容器中的元素可以逐个地迭代获取,可以用in, not in等关键字判断某个元素是否包含在容器中。在Python中,包括列表(list)、元组(tuple)、字典(dict)、集合(set)等,他们都可以放入多个元素,因此都可以算作是容器,这些容器是Python编程中非常重要的数据结构,我们接下来重点学习这些数据结构。

列表(list)是一种有序的容器,放入list中的元素,将会按照一定顺序排列。构造list的方法非常简单,使用中括号[]把需要放在容器里面的元素括起来,就定义了一个列表。

list可以放入数字、字符串等数据类型,list不对放入其中的类型进行判断,也就是说,list可以同时放入任意类型的数据,这是Python这门语言决定的,因为Python是动态语言。

对于list,我们可以直接把list的内容打印出来

Python按顺序访问list

列表是有序的,因此我们可以按顺序访问列表中的元素。对于一个空的列表,使用for循环访问,将不会打印任何东西。

# 按顺序输出列表 L = ['Alice', 66, 'Bob', True, 'False', 100] 的偶数位置的元素
index = 0;
L = ['Alice', 66, 'Bob', True, 'False', 100];
for item in L:
    if index % 2 ==0:
        print(item);
    index += 1
Python按索引访问list

在使用索引的方式访问列表时,一定要特别注意不要越界,列表和字符串一样,也支持切片。

names = ['Alice', 'Bob', 'David', 'Ellena']
print(names[0])

print(names[-3])

print(names[-3:])

print(names + [1,2,3])

print(names[:])

names[1:3] = []
print(names)


# 打印出第一名、第二名、第三名
L = [95.5, 85, 59, 66, 72]
L.sort()
L.reverse()
print(L[:3])

# 上题还有如下解法
L.sort(reverse=True)
print(L[:3])


Python倒序访问list

倒序访问,已在上面涉及到,也就是负数的形式

# 打印出第一名、第二名、第三名
L = [95.5, 85, 59, 66, 72]
L.sort()
r = L[-3:];
r.reverse()
print(r)

向list中添加新的元素

append()方法总是将元素添加到list的尾部,insert()方法和append()方法不一样,insert()方法需要两个参数,分别是需要插入的位置,以及需要插入的元素。

L = ['Alice', 'Bob', 'Candy', 'David', 'Ellena']
L.append('Zero')
L.insert(-1,'Phoebe')
L.insert(-2,'Gen')
从list中删除元素

pop() 函数用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值。pop()还可以接收一个参数,指定需要删除的元素的位置。

L = ['Alice', 'Bob', 'Candy', 'David', 'Ellena']
L.pop()
name = L.pop(-2)
print(L,name)
替换list中的元素

对于列表,除了可以向列表添加元素,删除列表元素以外,列表已有的元素,也是可以修改的,通过索引指定位置,并赋值新的元素,即可替换列表中原有的元素。

#班上某次考试,['Alice', 'Bob', 'Candy', 'David', 'Ellena'] 的成绩分别是 89, 72, 88, 79, 99,请按照成绩高低,重新排列list中同学名字的顺序。

name = ['Alice', 'Bob', 'Candy', 'David', 'Ellena']
score= [89, 72, 88, 79, 99]
L = list(zip(name, score))
print L,'\n'

def by_score(t):
    return t[1]
L1 = sorted(L, key = by_score, reverse = True)
n,s = zip(*L1) 
print n

二维与多维list
# 计算三个长方体的表面积
L = [[1, 2, 3], [5, 3, 2], [7,3,2]]
for cube in L:
    c = cube[0]
    k = cube[1]
    g = cube[2]
    result =(c*k + c*g + k*g)*2
    print(result)

学习截图

vt3ZKe.md.png

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP