太原理工大学2018级python复习题









第一题:

# 题目要求 键盘输入字符串 对其每个不重复的字符串形成列表 倒序输出
str_ = input("请输入字符串")
# 把字符串转为列表
listt = list(str_)
# 使用切片完成倒序
listtt = listt[::-1]
# 使用列表推导式去重
list3 = []
[list3.append(i) for i in listtt if not i in list3]
print(list3)

第二题

# 求阶乘的和
sum_test = 0


def test_sum(n):
    if n == 1:
        return 1
    return n * test_sum(n - 1)


n = int(input("请输入n的值"))
for i in range(1,n+1):
    sum_test += test_sum(i)
print(sum_test)

第三题:

class teacher(object):
    def __init__(self, title, major, subject):
        self.title = title
        self.major = major
        self.subject = subject

    def printTeacherInfo(self):
        print(f"教室的职称是{self.title}教师的专业是{self.major}教师的授课名称是{self.subject}")


class Cadre(object):
    def __init__(self, postion, department):
        self.posttion = postion
        self.department = department

    def printCadreInfo(self):
        print(f"干部的职位是{self.posttion}干部的部门是{self.department}")


class TeacherCadre(teacher, Cadre):
    def __init__(self, title, major, subject, postion, dpartment, name, gender, age, wages):
        teacher.__init__(self, title, major, subject)
        Cadre.__init__(self, postion, dpartment)
        self.name = name
        self.gender = gender
        self.age = age
        self.__wages = wages

    def printTeacherCadreInfo(self):
        print(f"职称是{self.title}专业是{self.major}授课名称是{self.subject}职位是{self.posttion}"
              f"部门是{self.department}姓名是{self.name}年龄是{self.age}性别是{self.gender}工资是{self.__wages}")


teacherCadre = TeacherCadre("老师", "软件", "数据库", "牛皮", "教学部", "libin", "男", 22, 5000)
teacherCadre.printTeacherCadreInfo()

第四题

# coding=utf-8
# 一个学校,有3个办公室,现在有8位老师等待工位的分配,请编写程序,完成随机的分配.
import random

# 定义一个列表来保存3个办公室
offices = [[], [], []]

# 定义一个列表来存储8位老师的名字
names = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H']

# 开始分配
# for name in names:
# index = random.randint(0, 2)
# offices[index].append(name)
# 如果有一个办公室为空就重新分配
while len(offices[0]) == 0 or len(offices[1]) == 0 or len(offices[2]) == 0:
    for name in names:
        index = random.randint(0, 2)
        offices[index].append(name)
# 遍历输出分配结果
i = 1
for tempNames in offices:
    print('办公室%d中有%d个老师,分别是:' % (i, len(tempNames))),
    i += 1
    for name in tempNames:
        print('%s' % name, end=" "),
    print()

第五题

class Vehicle(object):
    def __init__(self, wheels, weight):
        self.setWheels(wheels)
        self.setWeight(weight)

    def setWheels(self, wheels):
        self.__wheels = wheels

    def setWeight(self, weight):
        self.__weight = weight

    def getWeight(self):
        return self.__weight

    def getWheels(self):
        return self.__wheels

    def display(self):
        print("轮胎数为:" + str(self.getWheels()) + "," + "重量为:" + str(self.getWeight()))


class Car(Vehicle):
    def __init__(self, wheels, weight, passenger_load=4):
        super(Car, self).__init__(wheels, weight)
        Vehicle.__init__(self, wheels, weight)
        self.setPassenger(passenger_load)

    def setPassenger(self, passenger_load):
        self.__passenger_load = passenger_load

    def getPassenger(self):
        return self.__passenger_load

    def display(self):
        super(Car, self).display()
        print("载客量为:" + str(self.getPassenger()))


class Truck(Vehicle):
    def __init__(self, wheels, weight, passenger_load, payload):
        super(Truck, self).__init__(wheels, weight)
        Vehicle.__init__(self, wheels, weight)
        self.setPassenger(passenger_load)
        self.setPayload(payload)

    def setPassenger(self, passenger_load):
        self.__passenger_load = passenger_load

    def setPayload(self, payload):
        self.__payload = payload

    def getPayload(self):
        return self.__payload

    def getPassenger(self):
        return self.__passenger_load

    def display(self):
        super(Truck, self).display()
        print("载客量为:" + str(self.getPassenger()) + "," + "载重量为:" + str(self.getPayload()))


if __name__ == '__main__':
    vehicle = Vehicle(10, 150)
    vehicle.display()
    car = Car(5, 50)
    car.display()
    truck = Truck(12, 200, 12, 200)
    truck.display()

全部评论

相关推荐

02-10 13:41
西南大学 Java
点赞 评论 收藏
分享
点赞 评论 收藏
分享
老粉都知道小猪猪我很久没更新了,因为秋招非常非常不顺利,emo了三个月了,接下来说一下我的情况吧本人是双非本 专业是完全不着计算机边的非科班,比较有优势的是有两段大厂实习,美团和字节。秋招面了50+场泡池子泡死的:滴滴 快手 去哪儿 小鹏汽车 不知名的一两个小厂其中字节13场 两次3面挂 两次2面挂 一次一面挂其中有2场面试题没写出来,其他的都是全a,但该挂还是挂,第三次三面才面进去字节,秋招加暑期总共面了22次字节,在字节的面评可以出成书了快手面了8场,2次实习的,通过了但没去,一次2面挂 最后一次到录用评估 至今无消息滴滴三面完 没几天挂了 所有技术面找不出2个问题是我回答不上来的,三面还来说我去过字节,应该不会考虑滴滴吧,直接给我干傻了去哪儿一天速通 至今无消息小鹏汽车hr 至今无消息美团2面挂 然后不捞我了,三个志愿全部结束,估计被卡学历了虾皮二面挂 这个是我菜,面试官太牛逼了拼多多二面挂 3道题也全写了 也没问题是回答不出来的 泡一周后挂腾讯面了5次 一次2面挂 三次一面挂,我宣布腾讯是世界上最难进的互联网公司然后还有一些零零散散的中小厂,但是数量比较少,约面大多数都是大厂。整体的战况非常惨烈,面试机会少,就算面过了也需要和各路神仙横向对比,很多次我都是那个被比下去的人,不过这也正常,毕竟谁会放着一个985的硕士不招,反而去招一个双非读化学的小子感觉现在互联网对学历的要求越来越高了,不仅仅要985还要硕士了,双非几乎没啥生存空间了,我感觉未来几年双非想要进大厂开发的难度应该直线上升了,唯一的打法还是从大二刷实习,然后苟个转正,不然要是去秋招大概率是炮灰。而且就我面字节这么多次,已经开始问很多ai的东西了,你一破本科生要是没实习没科研懂什么ai啊,纯纯白给了
不知名牛友_:爸爸
秋招你被哪家公司挂了?
点赞 评论 收藏
分享
评论
2
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务