当前位置:首页>python>小白学python第62天之完成作业

小白学python第62天之完成作业

  • 2026-08-25 14:48:47
小白学python第62天之完成作业

2.7

完成作业

?

学前疑问

我们今天不学习新的知识点,只处理前面3天学习函数以及文件基本操作留下的作业,大家若是对作业解答有不同见解,都可以留言交流。

第59天

作业:

给定一个整数列表 numbers和一个字符串列表 students,请使用 lambda 表达式 完成以下任务:

numbers = [1, 5, -2, 10, -8, 7]students = ["Alice", "Bob", "Charlie", "David"]

(1)过滤负数:使用 filter()函数和 lambda 表达式,从 numbers中筛选出所有非负数(大于等于0的数)。

(2)计算平方:使用 map()函数和 lambda 表达式,计算 numbers中每个元素的平方,生成新列表。

(3)按名字长度排序:使用 sorted()函数和 lambda 表达式,将 students列表按照名字字符串的长度进行升序排序。

(4)找最长名字:使用 max()函数和 lambda 表达式,找出 students列表中名字最长的学生。

# 初始数据numbers = [1, 5, -2, 10, -8, 7]students = ["Alice", "Bob", "Charlie", "David"]# 1. 过滤出非负数non_negative = list(filter(lambda x: x >= 0, numbers))print("非负数:", non_negative) # 2. 计算每个数字的平方squares = list(map(lambda x: x ** 2, numbers))print("平方列表:", squares) # 3. 按名字长度排序sorted_by_length = sorted(students, key=lambda name: len(name))print("按长度排序:", sorted_by_length) # 4. 找出名字最长的学生longest_name = max(students, key=lambda name: len(name))print("最长的名字:", longest_name) 

第60天

作业:

给定一个包含若干整数的列表 numbers = [12, 5, -8, 0, 21, -15, 7, -3],请依次完成以下操作,并打印结果:

(1)转换绝对值:使用 map()函数,将列表中的每个数字转换为其绝对值。

(2)过滤正数:使用 filter()函数,筛选出所有大于0的正数。

(3)计算乘积:使用 reduce()函数,计算过滤后列表中所有数字的乘积。

from functools import reduce# 初始数据numbers = [12, 5, -8, 0, 21, -15, 7, -3]# 1. 使用 map() 转换绝对值abs_numbers = list(map(abs, numbers))print("绝对值列表:", abs_numbers) # 2. 使用 filter() 过滤出正数(注意:0不是正数)positive_numbers = list(filter(lambda x: x > 0, abs_numbers))print("正数列表:", positive_numbers) # 3. 使用 reduce() 计算正数列表中所有元素的乘积product = reduce(lambda x, y: x * y, positive_numbers)print("所有正数的乘积:", product) 

第61天

作业:

需求:用户输入当前目录下任意文件名,完成对该文件的备份功能(备份文件名为xx[备份]后缀,例如:test[备份].txt)。

实现思路:

① 接收用户输入的文件名

② 规划备份文件名

③ 备份文件写入数据

# 1、接收用户输入的文件名(要备份的文件名)oldname = input('请输入要备份的文件名称:')  # python.py# 2、规划备份文件名(python[备份].py)# 搜索点号index = oldname.rfind('.')# 返回文件名和文件后缀name = oldname[:index]postfix = oldname[index:]newname = name + '[备份]' + postfix# 3、对文件进行备份操作old_f = open(oldname, 'rb')new_f = open(newname, 'wb')# 读取源文件内容写入新文件while True:    content = old_f.read(1024)    if len(content) == 0:        break    new_f.write(content)# 4、关闭文件old_f.close()new_f.close()

今日学习完毕,课后作业: 

有空的小伙伴,可以参考代码运行,还是建议不看着代码自己手打,学习效率更好。明天继续学习新的python知识点。

最新文章

随机文章