美文网首页
da14-作业

da14-作业

作者: L_4bc8 | 来源:发表于2018-11-22 21:18 被阅读0次
    class Students:
        def __init__(self,name, age,*score):
            self.name = name
            self.age = age
            self._score = score
        def getname(self):
            return self.name
    
        def getage(self):
            return self.age
    
        @property
        def score(self):
            return  max(self._score)
    
    class Auto:
            def __init__(self, tyre, weight, speed):
                self.tyre = tyre
                self.weight = weight
                self.speed = speed
    
            def speed_up(self):
                print("汽车加速了!")
    
            def speed_down(self):
                print("汽车减速了!")
    
            def stop(self):
                print("汽车减速了!")
    
    a1 = Auto(4,'1T','155km/h')
    
    
    class CarAtuto(Auto):
        def __init__(self, air_cond, CD):
            self.air_cond = air_cond
            self.CD = self.CD
    c2 = CarAtuto('有','无')
    
    
    class User:
        def __init__(self,firstname, lastname, sex, age):
            self.firstname = firstname
            self.lastname = lastname
            self.sex = sex
            self.age = age
    
        def describe_user(self):
            print(self.__dict__)
    
        def greetuser(self):
            print("%s %s早上好!" % self.firstname, self.lastname)
    
    
    class Admin(User):
        def __init__(self, privileges:list,firstname, lastname, sex, age):
            super().__init__(firstname,lastname, sex, age )
            self._privileges = privileges
    
        @property
        def show_privileges(self):
            print("管理员的权限如下:")
            for value in  self._privileges:
                return print(value)
    
    
    
    count =  0
    class Person:
        def __init__(self,count):
            count += 1
    
    1. 歌词解析器
    def splits(str1, *str2):
        list1 = []
        new_str = ''
        for char1 in str1:
            if char1 in str2:
                list1.append(new_str)
                new_str = ''
            else:
                new_str += char1
        list1.append(new_str)
        while '' in list1:
            list1.remove('')
        return list1
    
    
    def exchange(list1):
        count = int(len(list1) / 3)
        dict1 = {}
        for value in range(count):
            a1 = 3 * (value + 1) - 3
            a2 = 3 * (value + 1) - 2
            a3 = 3 * (value + 1) - 1
            time = int(list1[a1]) * 3600 + int(list1[a2]) * 60 + int(list1[a3])
            dict1.update({time: list1[-1]})
        return dict1
    
    
    def a(x):
        global value
        for key in x:
            value = key
        return value
    
    
    def my_list(list):
        list_new = []
        for value in list:
            for key in value:
                list_new.append([key, value[key]])
        return list_new
    
    
    class MusicAnalysis:
        def __init__(self,address):
            self.address = address
    
        def read(self):
            ##提取txt文本中的歌词并保存为字典##
            with open(self.address, 'r', encoding='utf-8') as f:
                content = f.readline()
                dict_all = {}
                while content:
                    # 切割单行歌词
                    list1 = splits(content, '[', ':', '.', ']', '\n')
                    # 将时间转化为毫秒,并和对应的歌词添加进字典dict1
                    dict_all.update(exchange(list1))
                    content = f.readline()
                # 转换为列表 list_all
                list_all = []
                for key in dict_all:
                    list_all.append({key: dict_all[key]})
    
                # 对列表list1_all进行sort排列
            list_all.sort(key=a)
            list_all_ = my_list(list_all)
            return list_all_
    
    
        def show(self):
            for value1 in self.read():
                print(value1[1])
    
    
        def search(self,time):
            try:
                time1 = splits(time, ':', '.')
                time_new = int(time1[0])*3600 + int(time1[1])*60 + int(time1[2])
                list1 = self.read()
                count = -1
                for value1 in list1:
                    if time_new > value1[0]:
                        count += 1
                        continue
                    else:
                        return print(list1[count][1])
            except:
                print("请按格式正确输入时间")
    
    
    
    
    
    
    p1 = MusicAnalysis('files/歌词.txt')
    
    p1.show()
    print('==================')
    p1.search('02:00.00')
    

    相关文章

      网友评论

          本文标题:da14-作业

          本文链接:https://www.haomeiwen.com/subject/dldrqqtx.html