码迷,mamicode.com
首页 > 其他好文 > 详细

面向对象题目

时间:2018-09-17 00:06:41      阅读:260      评论:0      收藏:0      [点我收藏+]

标签:car   颜色   []   题目   速度   poi   格式   method   @class   

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()  # 返回所有数据,此时在实现格式打印

面向对象题目

标签:car   颜色   []   题目   速度   poi   格式   method   @class   

原文地址:http://blog.51cto.com/13886193/2175797

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!