问:
基础题:
设计一个复利计算函数invest(),它包含三个参数:amount(资金),rate(年利率),time(投资时间)。
键盘输入每个参数后,输出结果:返回每一年的资金总额
比如,amount = 10000 , rate = 8% ,time = 5
提高题:
请实现一个函数,将一个字符串中的每个空格替换成“%20”。
例如,当字符串为We Are Happy,则经过替换之后的字符串为We%20Are%20Happy。
答:
基础题:
设计一个复利计算函数invest(),它包含三个参数:amount(资金),rate(年利率),time(投资时间)。
键盘输入每个参数后,输出结果:返回每一年的资金总额
比如,amount = 10000 , rate = 8% ,time = 5
方法1:
def invest(amount,rate,time): for i in range(1,time+1): sum=amount*(1+rate)**i print('第{}年总额为:{:.3f}'.format(i,sum)) return sum a=eval(input('请输入资金:')) r=float(input('请输入年利率:')) t=eval(input('请输入投资时间:')) invest(a,r,t)
方法2:
def invest(amount, rate, time): for _ in range(time): amount *= 1+rate return amount def main(): amount = eval(input('输入本金:')) rate = eval(input('输入年利率:')) time = eval(input('投资年限:')) print(invest(amount, rate, time)) main()
方法3:
def invest(amount, rate, time): ''' 复利计算 :return: ''' print('本金:{}'.format(amount)) for t in range(1, time + 1): amount = amount * (1 + rate) print('第{}年: ¥{}'.format(t, amount)) if __name__ == '__main__': amount = float(input("请输入资金:")) rate = float(input("请输入年利率:")) time = int(input("请输入投资时间:")) invest(amount, rate, time)
方法4:
def invest(): amount = int(input('input your amount:')) rate = float(input('rate is:')) time = int(input('your cycle is:')) for i in range(1, time + 1): amount *= (1 + rate) print('第{}年 : {}'.format(i, amount)) # return amount*(1+rate)**time if __name__ == "__main__": invest()
提高题:
请实现一个函数,将一个字符串中的每个空格替换成“%20”。 例如,当字符串为We Are Happy,则经过替换之后的字符串为We%20Are%20Happy。
方法1:
def change(t):
i = t.replace(' ', '%20')
return i
j = str(input('请输入字符串:'))
print('替换后为:{}'.format(change(j)))
方法2:
def replace_black(string): return string.replace(" ", "%20") def main(): string = input('输入需要处理句子:') print(replace_black(string)) main()
方法3:
# 用原生函数实现 def convert_space_to_percent_sign(s): s = s.replace(' ', '%20') return s print(convert_space_to_percent_sign('We Are Happy'))
方法4:
# 1. print('We Are Happy'.replace(' ', '%20')) # 2. import re print(re.sub(r' ', '%20', 'We Are Happy'))
方法5:
amount = int(input("请输入金额:")) rate = float(input("请输入年利率:")) time = int(input("请输入投资时间(年):")) def invest(amount, rate, time): for i in range(time): money_every = amount * pow((1 + rate), i) print("第{0}年的资金总额为:{1}".format(i, money_every)) invest(amount, rate, time)