【Python讲义】WEEK 5

写在前面:

本系列文章收录:CAU计算机类公选课《Python语言程序设计》的课堂讲义
课程时间为:2022~2023学年秋季
供各位小白参考~

 

name = '初心'

age = 18

score = 98.5

# 整型  %nd

# 浮点型 %m.nf

# 字符串 %s

# 输出3种格式:

# 第一种:

print("姓名:%s,年龄:%d,分数:%.2f"%(name,age,score))

# 第二种

print("姓名:{},年龄:{},分数:{}".format(name,age,score))

print("姓名:{0},年龄:{1},分数:{2}".format(name,age,score))

print("姓名:{n},年龄:{a},分数:{s}".format(n=name,a=age,s=score))

# 第三种 f-string

print(f"姓名:{name},年龄:{age},分数:{score}")

运行结果:

姓名:初心,年龄:18,分数:98.50

姓名:初心,年龄:18,分数:98.5

姓名:初心,年龄:18,分数:98.5

姓名:初心,年龄:18,分数:98.5

姓名:初心,年龄:18,分数:98.5

第4章 Python的4种典型序列(容器)结构

序列是一种常用的数据存储方式。

4种典型序列结构:列表、元组、字典和集合。

序列是一块用于存放多个值得连续内存空间,并且按照一定的顺序排列,每一个值(又被称为元素)都分配一个数字,被称为索引或者位置。

通过索引可以取出相应的值。

(1)索引

列中每一个元素都有一个编号,这个编号即为索引。索引也称为下标或者编号。

索引从0开始递增。

对于Python来说,索引可以为负数。从右向左,最后一个索引:-1。

【示例】索引的应用。

hobby = ['唱歌','跳舞','Rap','篮球','健美操']

print(hobby[0],hobby[-1],hobby[1])

运行结果:

唱歌 健美操 跳舞

(2)切片

切片是指对操作的对象截取其中一部分的操作,即从容器中取出相应的元素,重新组成一个容器。

切片操作可以生成一个新的序列。

语法格式:

sname[start:end:step]

参数说明:

start:表示切片的开始位置(包括该位置),如果不指定则默认为0。

end:表示切片的截止位置(不包含该位置),如果不指定,则默认序列的长度。

step:表示切片的步长,如果省略,则默认为1,当省略该步长时,最后一个冒号也不能省略。步长值不能为0。

切片选取的区间属于左闭右开

步长大于0,从左到右。

步长小于0,从右到左。

【示例】利用切片,获取第2元素到4个元素。

hobby = ['唱歌','跳舞','Rap','篮球','健美操']

print(hobby[1:4:1])

运行结果:

['跳舞', 'Rap', '篮球']

3.序列相加(连接)

符号:+

【示例】两个序列相加。

hobby_1 = ['唱歌','跳舞','Rap','篮球','健美操']

hobby_2 = ['看电影','逛商场','跑步']

print(hobby_1 + hobby_2)

运行结果:

['唱歌', '跳舞', 'Rap', '篮球', '健美操', '看电影', '逛商场', '跑步']

4.序列的乘法

把原序列重复n次。

【示例】

love = ["宝贝,对不起,我错了!"]

print(love * 3)

运行结果:

['宝贝,对不起,我错了!', '宝贝,对不起,我错了!', '宝贝,对不起,我错了!']

5.检查某个元素是否是序列的成员(元素)

【示例】

hobby  = ['唱歌','跳舞','Rap','篮球','健美操']

print( '篮球' in hobby)

运行结果:

True

6.计算序列的长度、最大值和最小值

len()   max()   min()

【示例】从列表中找出最大,最小和计算长度。

height = [158,185,175,165,198]

print( len(height),max(height),min(height))

运行结果:

5 198 158

4.2 列表

列表是属于Python内置的可变序列。

从形式上来看,列表所有的元素都放在一对“[]”中,两个相邻元素间使用逗号“,”隔开。

从内容上来看,可以将整数、实数、字符串、列表、元组等任何类型的内容放入到列表中,同一个列表中,元素的类型可以不同。

1.列表的创建与删除

语法格式:

listname = [元素1,元素2,…]

创建空列表:

Emptylist = []

创建数值列表:

使用list()函数直接将range()函数循环出的结果转换为列表。

【示例】创建一个10~20之间的偶数列表(不包含20)。

num_list = list(range(10,20,2))

print(num_list)

运行结果:

[10, 12, 14, 16, 18]

删除列表:

del 列表名

2.列表元素的访问与遍历

(1)采用下标法

【示例】

hobby  = ['唱歌','跳舞','Rap','篮球','健美操']

print(hobby[1],hobby[-1])

print(hobby[1:3])

运行结果:

跳舞 健美操

['跳舞', 'Rap']

(2)使用for遍历列表

使用for遍历列表时,只能输出元素的值。

语法结构:

for item in listname:

       输出语句

【示例】

hobby  = ['唱歌','跳舞','Rap','篮球','健美操']

for i in hobby:

print(i)

运行结果:

唱歌

跳舞

Rap

篮球

健美操

(2)使用for循环和enumerate()函数实现。

       可以实现同时输出索引值和元素内容。

语法格式:

for index,value in enumerate(listname):

       输出语句

【示例】

hobby  = ['唱歌','跳舞','Rap','篮球','健美操']

for index,value in enumerate(hobby):

print(index,'   ',value)

运行结果:

0     唱歌

1     跳舞

2     Rap

3     篮球

4     健美操

(3)利用while语句输出列表的各个元素。

hobby  = ['唱歌','跳舞','Rap','篮球','健美操']

i = 0

while i < len(hobby):

    print(hobby[i])

i += 1

运行结果:

唱歌

跳舞

Rap

篮球

健美操

(4)利用索引遍历。

【示例】

hobby  = ['唱歌','跳舞','Rap','篮球','健美操']

for index in range(len(hobby)):

print(hobby[index])

运行结果:

唱歌

跳舞

Rap

篮球

健美操

(5)利用iter()生成迭代器。

【示例】

hobby  = ['唱歌','跳舞','Rap','篮球','健美操']

for item in iter(hobby):

    print(item)

运行结果:

唱歌

跳舞

Rap

篮球

健美操

3.列表的常用操作(增、删、改、查)

(1)增加元素

1)+

2)借助函数append()

功能:用于在列表的末尾添加新的对象。

两种方式:执行速度上,+比append()慢。

【示例】

hobby_1 = ['唱歌','跳舞','Rap','篮球','健美操']

hobby_2 = ['看电影','逛商场','跑步']

hobby_1.append(hobby_2)

print(hobby_1)

运行结果:

['唱歌', '跳舞', 'Rap', '篮球', '健美操',[ '看电影', '逛商场', '跑步']]

注:追加整个序列到列表。

(2)extend()

功能:用于在列表末尾一次性追加另一个序列中的多个值。

hobby_1 = ['唱歌','跳舞','Rap','篮球','健美操']

hobby_2 = ['看电影','逛商场','跑步']

hobby_1.extend(hobby_2)

print(hobby_1)

运行结果:

['唱歌', '跳舞', 'Rap', '篮球', '健美操', '看电影', '逛商场', '跑步']

(3)insert()

功能:用于将指定的对象插入列表的指定位置。

语法结构:

list.insert(index,obj)

【示例】

hobby_1 = ['唱歌','跳舞','Rap','篮球','健美操']

hobby_2 = ['看电影','逛商场','跑步']

hobby_1.insert(1,hobby_2)

print(hobby_1)

运行结果:

['唱歌', ['看电影', '逛商场', '跑步'], '跳舞', 'Rap', '篮球', '健美操']

2.删除元素

(1)根据索引删除

(2)根据元素的值删除

借助remove()方法,没有返回值但是会移除列表中的某个值得第一个匹配。

(3)pop()方法

功能:移除列表中的一个元素(默认是最后一个元素),并且返回该元素的值。

(4)clear()方法

功能:清空列表

【示例】

hobby_1 = ['唱歌','跳舞','Rap','篮球','健美操']

del hobby_1[2]

print(hobby_1)

hobby_1.remove('健美操')

print(hobby_1)

print(hobby_1.pop())

print(hobby_1)

hobby_1.clear()

print(hobby_1)

运行结果:

['唱歌', '跳舞', '篮球', '健美操']

['唱歌', '跳舞', '篮球']

['唱歌', '跳舞', '篮球', '健美操']

['唱歌', '跳舞', '篮球']

篮球

['唱歌', '跳舞']

[]

3.修改元素方法

(1)修改指定索引的数据

(2)逆序:reverse()方法

(3)复制:copy()方法

【示例】

hobby = ['唱歌','跳舞','Rap','篮球','健美操']

new_list = hobby.copy()

# 通过索引修改

hobby[2] = '享受生活,品味美食'

print(hobby)

hobby.reverse()

print(hobby)

print(new_list)

运行结果:

['唱歌', '跳舞', '享受生活,品味美食', '篮球', '健美操']

['健美操', '篮球', '享受生活,品味美食', '跳舞', '唱歌']

['唱歌', '跳舞', 'Rap', '篮球', '健美操']

4.查找元素

(1)index()方法

功能:用于从列表中找出某个值第一个匹配项的索引位置,即获取指定元素首次出现的下标。

(2)cout()方法

功能:用于统计某个元素在列表中出现的次数。

(3)len()方法

功能:返回列表元素的个数

(4)in 判断是否存在

【示例】

hobby = ['唱歌','跳舞','Rap','篮球','健美操']

print(hobby.index('Rap'))

print(hobby.count('Rap'))

print(len(hobby))

运行结果:

2

1

5

4.列表的统计与排序

(1)sum()

功能:用于统计数值列表中的元素和

num_list = list(range(10,20,2))

print(sum(num_list),num_list)

运行结果:

70 [10, 12, 14, 16, 18]

(2)排序

1)sort()方法

语法结构:

listname.sort(reverse=True/False)

2)sorted()函数

功能:排序,原列表的顺序不变

【示例】

height = [158,185,175,165,198]

height_copy = height.copy()

height.sort(reverse=True)

print("降序:",height)

height.sort(reverse=False)

print("升序:",height)

print(height_copy)

height_copy_asc = sorted(height_copy ) # 默认reverse的值为False

print(height_copy_asc)

运行结果:

降序: [198, 185, 175, 165, 158]

升序: [158, 165, 175, 185, 198]

[158, 185, 175, 165, 198]

[158, 165, 175, 185, 198]

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MorleyOlsen

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值