面向对象题目
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面向对象题目相关的知识,希望对你有一定的参考价值。
1、随机数生成类
可以指定一批生成的个数,可以指定生成范围,可以调整每批生成数字的个数
import random
#1普通类实现
class RandomGen:
def __init__(self, num=10,start=1,stop=100,patch=10):
self.start = start
self.stop = stop
self.patch = patch
def generate(self):
return [random.randint(self.start,self.stop) for _ in range(self.patch)]
#2作为工具类实现,提供类方法
class RandomGen:
@classmethod
def generate(cls,start=1,stop=100,patch=10):
return [random.randint(start,stop) for _ in range(patch)]
2、打印坐标
使用上题中的类,随机生成20个数字,两两配对形成二维坐标系的坐标,把这些打印组织起来,并打印输出
class Point:
def __init__(self,x,y):
self.x = x
self.y = y
points = [Point(x,y) for x ,y in zip(RandomGenerator(10).generate(),RandomGenerator(10).generate())]
for p in points:
print(‘{}:{}‘.format(p.x,p.y))
3、车辆信息
记录车的品×××mark、颜色color、价格price、速度speed等特征,并实现增加车辆信息、显示车辆全部信息的功能
class Car:
def __init__(self,mark,color,price,speed):
self.mark = mark
self.color = color
self.price = price
self.speed = speed
class CarInfo:
def __init__(self):
self.info = []
def addcar(self,car:car):
self.info.append(car)
def getall(self):
return self.info
ci = CarInfo()
car = Car(‘ahuang‘,400,‘rad‘,10)
ci.addcar(car)
ci.getall() # 返回所有数据,此时在实现格式打印
以上是关于面向对象题目的主要内容,如果未能解决你的问题,请参考以下文章