Homework5

import json
import multiprocessing
import requests
def A(path):
    url = []
    name = []
    
    with open(path,mode='r')as f:
        res = f.readlines()[0].strip('\n').split('}')
        for json_ in res[:-1]:
            _json = json_ + '}'
            _json = json.loads(_json)
            song_play_url = _json['song_play_url']
            song_name = _json['song_name']
            if song_play_url is not None:
                url.append(song_play_url)
                name.append(song_name)
    return url,name
urls,names = A('C:\\Users\\MacBook\\Desktop\\top_500.txt')



def B(urls,names):
    i = 0
    for path_ in urls:
        i += 1                
        response = requests.get(path_)
        mp3_ = response.content
        with open('C:\\Users\\MacBook\\Desktop\\gequ\\'+names[i]+'.mp3',mode='wb')as f:
            f.write(mp3_)



if __name__ == "__main__":
    lens = int(len(urls)/2)
    p1 = multiprocessing.Process(target=B,args=(urls[0:lens],names[0:lens]))
    p2 = multiprocessing.Process(target=B,args=(urls[lens:],names[lens:]))
    p1.start()
    p2.start()
    p1.join()
    p2.join()
class Rectangle(object):
    def __init__(self,width=1,height=2):
        self.width = width
        self.height = height

    def getArea(self):
        return self.width*self.height
        

    def getPerimeter(self):
        return (self.width+self.height)*2

def main():
    rectangle = Rectangle(4,40)
    print('宽是>>',rectangle.width)
    print('高是>>',rectangle.height)
    print('面积是>>',rectangle.getArea())
    print('周长是>>',rectangle.getPerimeter())
    print('---------------------------------')
    tom = Rectangle(3.5,35.7)
    print('宽是>>',tom.width)
    print('高是>>',tom.height)
    print('面积是>>',tom.getArea())
    print('周长是>>',tom.getPerimeter())
    
if __name__ == "__main__":
    main()
      


#2

class Account(object):
    def __init__(self,id=0,balance=100,annuallnteresterRate=0):
        self._id = id
        self._balance = balance
        self._annuallnteresterRate = annuallnteresterRate

    @property
    def id(self):
        return self._id
    @id.setter
    def id(self,new_id):
        self._id = new_id
    
    @property
    def balance(self):
        return self._balance

    @balance.setter
    def balance(self,new_balance):
        self._balance = new_balance

    @property
    def annuallnteresterRate(self):
        return self._annuallnteresterRate

    @annuallnteresterRate.setter
    def annuallnteresterRate(self,new_annuallnteresterRate):
        self._annuallnteresterRate = new_annuallnteresterRate

    def MonthlyIInterestRate(self,new_id,new_balance,new_annuallnteresterRate):
        return new_annuallnteresterRate /12
        
    def MonthlyInterest(self,new_id,new_balance,new_annuallnteresterRate):

        return new_balance*new_annuallnteresterRate/12

    def withdraw(self,new_id,new_balance,new_annuallnteresterRate):
        print('取出金额为:')

    def deposit(self,new_id,new_balance,new_annuallnteresterRate):
        print('充进金额为:')
        
def main():
    tom = Account()
    tom.id = 1122
    tom.balance = 20000
    tom.annuallnteresterRate = 0.45
    tom.withdraw = 2500
    tom.deposit = 3000
    print('此账号id是>>',tom.id)
    a = tom.balance -tom.withdraw+tom.deposit
    print('余额是>>',a)
    tom.MonthlyIInterestRate = tom.annuallnteresterRate/12
    print('月利率是>>',tom.MonthlyIInterestRate)
    tom.MonthlyInterest = a*tom.MonthlyIInterestRate
    print('月利息是>>',tom.MonthlyInterest)
        
if __name__ == "__main__":                             
    main()
class Fan(object):
    def __init__(self,speed=1,on=False,radius=5.0,color="blue"):
        self.__speed = int(speed)
        self.__on = bool(on)
        self.__radius = float(radius)
        self.__color = str(color)
    @property
    def speed(self):
        return self.__speed
    @speed.setter
    def speed(self,new_speed):
        if self.__speed == 1:
            self.__speed=new_speed = "SLOW"
        elif self.__speed == 2:
            self.__speed=new_speed = "MEDIUM"
        elif self.__speed == 3:
            self.__speed=new_speed = "FAST"
    @property
    def on(self):
        return self.__on
    @on.setter
    def on(self,new_on):
        self.__on==new_on

    @property
    def radius(self):
        return self.__radius
    @radius.setter
    def radius(self,new_radius):
        self.__radius==new_radius

    @property
    def color(self):
        return self.__color
    @color.setter
    def color(self,new_color):
        self.__color==new_color

    def fans(self):
        print("{}颜色的风扇半径为{},速度{},打开状态{}".format(self.__color,self.__radius,self.__speed,self.__on))

if __name__ == '__main__':
    con = Fan()
    con.fans()
    con1 = Fan(3,on=True,radius=10.0,color="yellow")
    con1.fans()
    con1 = Fan(2,on=False,radius=5.0,color="blue")
    con1.fans()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值