问:

基础题:

设计一个复利计算函数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)

Python【每日一问】37的更多相关文章

  1. [python每日一练]--0012:敏感词过滤 type2

    题目链接:https://github.com/Show-Me-the-Code/show-me-the-code代码github链接:https://github.com/wjsaya/python ...

  2. Python每日一练(1):计算文件夹内各个文章中出现次数最多的单词

    #coding:utf-8 import os,re path = 'test' files = os.listdir(path) def count_word(words): dic = {} ma ...

  3. python每日一函数 - divmod数字处理函数

    python每日一函数 - divmod数字处理函数 divmod(a,b)函数 中文说明: divmod(a,b)方法返回的是a//b(除法取整)以及a对b的余数 返回结果类型为tuple 参数: ...

  4. 每日一问:Android 消息机制,我有必要再讲一次!

    坚持原创日更,短平快的 Android 进阶系列,敬请直接在微信公众号搜索:nanchen,直接关注并设为星标,精彩不容错过. 我 17 年的 面试系列,曾写过一篇名为:Android 面试(五):探 ...

  5. 每日一问:谈谈 volatile 关键字

    这是 wanAndroid 每日一问中的一道题,下面我们来尝试解答一下. 讲讲并发专题 volatile,synchronize,CAS,happens before, lost wake up 为了 ...

  6. 每日一问:讲讲 Java 虚拟机的垃圾回收

    昨天我们用比较精简的文字讲了 Java 虚拟机结构,没看过的可以直接从这里查看: 每日一问:你了解 Java 虚拟机结构么? 今天我们必须来看看 Java 虚拟机的垃圾回收算法是怎样的.不过在开始之前 ...

  7. 每日一问:你了解 Java 虚拟机结构么?

    对于从事 C/C++ 程序员开发的小伙伴来说,在内存管理领域非常头疼,因为他们总是需要对每一个 new 操作去写配对的 delete/free 代码.而对于我们 Android 乃至 Java 程序员 ...

  8. 每日一问:LayoutParams 你知道多少?

    前面的文章中着重讲解了 View 的测量流程.其中我提到了一句非常重要的话:View 的测量匡高是由父控件的 MeasureSpec 和 View 自身的 `LayoutParams 共同决定的.我们 ...

  9. 每日一问:简述 View 的绘制流程

    Android 开发中经常需要用一些自定义 View 去满足产品和设计的脑洞,所以 View 的绘制流程至关重要.网上目前有非常多这方面的资料,但最好的方式还是直接跟着源码进行解读,每日一问系列一直追 ...

  10. python每日一练:0007题

    第 0007 题: 有个目录,里面是你自己写过的程序,统计一下你写过多少行代码.包括空行和注释,但是要分别列出来. # -*- coding:utf-8 -*- import os def count ...

随机推荐

  1. 关于如何提高缓存命中率(redis)

    一.缓存命中率的介绍 命中:可以直接通过缓存获取到需要的数据. 不命中:无法直接通过缓存获取到想要的数据,需要再次查询数据库或者执行其它的操作.原因可能是由于缓存中根本不存在,或者缓存已经过期. 通常 ...

  2. yii2 HeadersAlreadySentException 报错

    An Error occurred while handling another error:exception 'yii\web\HeadersAlreadySentException' with ...

  3. 关于前端ajax请求url为何添加一个随机数

    一.起因 我在做爬虫的时候发现很多网站上都在url上加一个随机数或者时间戳一开始我以为是啥加密后面发现其实他在后台解析的时候也不需要不排除有些网站他反爬就需要一个时间戳,那他加个随机数是做啥子 二.查 ...

  4. Python基础21

    对轴0,轴1,“axis”轴的理解很关键

  5. Lucene搜索核心代码TermInfosReader

    TermInfosReader类是Lucene搜索的核心代码,所有的搜索最终都是落到通过term查询,TermInfosReader里定义了支持的基础的term查询功能. 前置知识: 词元字典文件(t ...

  6. 再谈EFAGE寄存器中的C位,P位,O位

    由于写EFLAGE博文中,有关C位,P位,O位,我觉得我没有描述清楚,而且C位也没有演示过借位情况,P位中也有些坑没讲,我还是决定再补一篇,争取把每个标志位描述清楚,不光是让看我文章的人能看的明白,也 ...

  7. bat延迟执行脚本,利用choice实现定时执行功能

    choice是选择语句,具体语法另外再讲.今天利用它来实现定时执行功能.废话少说直接上代码: 示例一: @echo off for %%a in (我 是 一 个 中 国 人) do ping -n ...

  8. 虚拟机中的jenkins无法访问&Nginx配置

    虚拟机中安装了Gitlab,gitlab中也有nginx,导致端口冲突,用curl显示连接已被重置 一开始发现jenkins在本地可以访问,外网无法访问,本想通过nginx进行反代,实现访问,可是访问 ...

  9. ASIO库使用注意事项

    1. 使用 io_service::work 实现 io_service 无任务时不退出 正常情况下向io_service抛任务,它执行完成后就会自动退出,而要实现那种chromium那种的循环队列, ...

  10. adb命令之解锁打卡

    adb devicesadb shell input keyevent 26                       按手机电源键adb shell input swipe 400 1080 40 ...