写一个Python程序,分别把 string, list, tuple, dict写入到文件中完成相应类的创建,并定义一个哮天犬对象,它将继续Dog类的方法,而Dog类又会继承Animal类的方法,最...
时间: 2024-03-09 16:44:10 浏览: 63
好的,我明白了你的问题。以下是你所需的 Python 代码:
```python
# 创建文件并写入数据
with open('data.txt', 'w') as f:
# 写入字符串
f.write('This is a string.\n')
# 写入列表
f.write('This is a list:\n')
lst = ['apple', 'banana', 'cherry']
for item in lst:
f.write(item + '\n')
# 写入元组
f.write('This is a tuple:\n')
tpl = ('apple', 'banana', 'cherry')
for item in tpl:
f.write(item + '\n')
# 写入字典
f.write('This is a dictionary:\n')
dct = {'name': 'John', 'age': 25, 'city': 'New York'}
for key, value in dct.items():
f.write(key + ': ' + str(value) + '\n')
# 定义 Animal 类
class Animal:
def __init__(self, name, species):
self.name = name
self.species = species
def __str__(self):
return f'{self.name} ({self.species})'
def make_sound(self):
print('The animal makes a sound.')
# 定义 Dog 类,继承自 Animal 类
class Dog(Animal):
def __init__(self, name, breed):
super().__init__(name, species='Dog')
self.breed = breed
def __str__(self):
return f'{self.name} ({self.species}, {self.breed})'
def bark(self):
print('Woof woof!')
# 定义哮天犬类,继承自 Dog 类
class Cerberus(Dog):
def __init__(self, name, breed='Cerberus'):
super().__init__(name, breed)
def __str__(self):
return f'{self.name} ({self.species}, {self.breed})'
def guard_underworld(self):
print('The Cerberus guards the underworld.')
# 创建一个哮天犬对象
my_cerberus = Cerberus('Fluffy')
# 调用哮天犬对象的方法
print(my_cerberus)
my_cerberus.bark()
my_cerberus.guard_underworld()
```
这个程序会创建一个名为 `data.txt` 的文件,并将字符串、列表、元组和字典写入其中。接着定义了 Animal、Dog 和 Cerberus 三个类,其中 Cerberus 继承自 Dog 类,而 Dog 类又继承自 Animal 类。最后创建了一个名为 `my_cerberus` 的哮天犬对象,并调用了它的方法。
阅读全文