22、对于本次作业,你需要编写一个或多个程序来读取文件内容并进行以下计算:每年的平均油价:计算文件中每一年的汽油平均价格。(文件数据始于1993年4月,止于2013年8月。使用1993年和2013年现有的数据。)每月的平均油价:计算文件中每个月的平均价格。每年的最高和最低油价:对于文件中的每一年,确定最低价格和最高价格的日期及金额。油价从低到高列表:生成一个文本文件,按价格从低到高列出日期和价格。油价从高到低列表:生成一个文本文件,按价格从高到低列出日期和价格。你可以编写一个程序来执行所有这些计算,也可以为每个计算编写不同的程序。
你可以编写一个或多个程序来读取文件内容,实现以下功能:
- 计算每年平均油价
- 计算每月平均油价
- 确定每年最高和最低油价的日期及金额
- 生成按价格从低到高排列的日期与价格列表的文本文件
- 生成按价格从高到低排列的日期与价格列表的文本文件
你可以选择用一个程序完成所有计算,也可以为每个计算单独编写程序。
23、编写一个程序,要求用户输入一条消息(字符串)和一个偏移量(整数)。这些值应传递给一个函数,该函数接受一个字符串和一个整数作为参数,并返回一个字符串,表示通过将字母按该整数进行偏移加密后的原始字符串。例如,字符串 “BEWARE THE IDES OF MARCH” 和整数 13 应得到字符串 “ORJNER GUR VQRF BS ZNEPU”。
以下是满足需求的 Python 代码:
def caesar_encrypt(message, shift):
encrypted = ''
for char in message:
if char.isalpha():
base = ord('A') if char.isupper() else ord('a')
new_char = chr((ord(char) - base + shift) % 26 + base)
encrypted += new_char
else:
encrypted += char
return encrypted
message = input("请输入消息: ")
shift = int(input("请输入偏移量: "))
encrypted_message = caesar_encrypt(message, shift)
print(encrypted_message)
24、以下是类的定义:class Art: def init (self, art_type): self. art_type = art_type def message(self): print(“I’m a piece of art.”) class Painting(Art): def __init (self): Art. init (self, ‘painting’) def message(self): print(“I’m a painting.”) 给定这些类定义,以下语句将显示什么内容?a = Art(‘sculpture’) p = Painting() a.message() p.message()
I’m a piece of art.I’m a painting.
25、查看以下类定义:class Bird: def init (self, bird_type): self._bird_type = bird_type 编写一个名为Duck的类,它是Bird类的子类。Duck类的__init__方法应调用Bird类的__init__方法,并将’duck’作为参数传递。
class Duck(Bird):
def __init__(self):
Bird.__init__(self, 'duck')
26、编写一个 Employee 类,该类包含以下信息的数据属性:员工姓名、员工编号。接着,编写一个名为 ProductionWorker 的类,它是 Employee 类的子类。ProductionWorker 类应包含以下信息的数据属性:班次编号(一个整数,如 1、2 或 3)、每小时工资率。工作日分为两个班次:白班和夜班。班次属性将保存一个整数值,表示员工工作的班次。白班是 1 班,夜班是 2 班。为每个类编写适当的访问器和修改器方法。编写完这些类后,编写一个程序,创建一个 ProductionWorker 类的对象,并提示用户为该对象的每个数据属性输入数据。将数据存储在对象中,然后使用对象的访问器方法检索数据并将其显示在屏幕上。
以下是实现上述需求的 Python 代码:

最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



