求解python中,这段天天向上力量代码中部分语句的解释

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求解python中,这段天天向上力量代码中部分语句的解释相关的知识,希望对你有一定的参考价值。

初学,百度很多教程一头雾水,遂来求解
迷点1:def dayup(a),后面是.s=(1+a),此时a只是一个字母怎么能计算加减法
迷点2:return s,把s的值返回到哪里了?
迷点3:dayup(m)为什么前面定义的是dayup(a),到后面却成了m
迷点4:m的值如何变成了a感激不尽

迷点1:def dayup(a),后面是.s=(1+a),此时a只是一个字母怎么能计算加减法
——a是一个变量,作为方法dayup的参数输入进来。
迷点2:return s,把s的值返回到哪里了?
——return返回值是作为方法的返回值,在具体调用方法的时候作为方法的返回值,具体举个例子
res = dayup(3)
s就是这个dayup(3)的返回值,赋值给了s
迷点3:dayup(m)为什么前面定义的是dayup(a),到后面却成了m
——a是定义方法的写法,你可以用任何其他命名来代替,m则是具体调用时的参数
迷点4:m的值如何变成了a感激不尽
m作为参数进入到了方法,就是a,你可以理解为a是名字,m是a的值
参考技术A def是一个函数声明,声明的dayup是一个函数,而a是一个变量,后面1+a里面的a是从函数外面传进来的参数。

return s,的意思就是把s的数值返回给dayup这个函数的返回值。
dayup(m)这句就执行dayup函数,把m的数值给了前面的a,然后运行函数,算完得到s返回给dayup的返回值
这个是函数的概念。
参考技术B 1.a是参数, 传进函数之后可以调用。
2.可以理解为返回至所命名用于存储其值的变量。
3.m已经定义为0.01, 函数外的程序将m作为参数传入,执行了程序。
4.m只是一个变量名字, a也是的, 本质上是在调用变量值。

Python实现 天天向上的力量(嵩天老师)

示例3:天天向上的力量
 

问题1:千分之一的力量
-一年365天,每天进步千分之一,累计进步多少呢?
-一年365天,每天退步千分之一,累计剩下多少呢?

代码:

#DayDayUpQ1.py
dayup=pow(1.001,365)
daydown=pow(0.999,365)
print("向上::.2f,向下::.2f".format(dayup,daydown))

运行:

问题2:千分之五和白分之一的力量
-一年365天,每天进步千分之五或百分之一,累计退步多少呢?
-一年365天,每天退步千分之五或百分之一,累计退步多少呢?

代码:(0.005)

#DayDayUpQ2.py
dayfactor=0.005
dayup=pow(1+dayfactor,365)
daydown=pow(1-dayfactor,365)
print("向上::.2f,向下::.2f".format(dayup,daydown))

运行:

 代码:(0.01)

#DayDayUpQ2.py
dayfactor=0.01
dayup=pow(1+dayfactor,365)
daydown=pow(1-dayfactor,365)
print("向上::.2f,向下::.2f".format(dayup,daydown))

运行:

问题3:工作日的力量
-一年365天,一周5个公作日,每天进步1%
-一年365天,一周2个公作日,每天退步1%
-这种工作日的力量,如何呢?

代码:

#DayDayUp3.py
dayup=1.0
dayfactor=0.01
for i in range(365):
	if i % 7 in [6,0]:
		dayup=dayup*(1-dayfactor)
	else:
		dayup=dayup*(1+dayfactor)
print("工作日的力量::.2f".format(dayup))

运行:

问题4:工作日的努力
-工作日模式要努力到什么水平,才能与每天努力1%一样?
假设两个人
-A君:一年365天,每天进步1%,不停歇
-B君:一年365天,每周工作5天休息2天,休息日下降1%,要多努力呢?

代码:

#DayDayUpQ4.py
def dayUP(df):
	dayup=1
	for i in range(365):
		if i % 7 in [6,0]:
			dayup=dayup*(1-0.01)
		else:
			dayup=dayup*(1+df)
	return dayup
dayfactor=0.01
while dayUP(dayfactor)<37.78:
	dayfactor+=0.001
print("工作日的努力参数是::.3f".format(dayfactor))

运行:

 代码比较简单,不再做逐行解释,可以复制代码运行一下进行理解

以上是关于求解python中,这段天天向上力量代码中部分语句的解释的主要内容,如果未能解决你的问题,请参考以下文章

天天向上的力量python(举一反三)

Python实现 天天向上的力量(嵩天老师)

Python|天天向上的力量

天天向上的力量 III(python在pycharm实现)

向上/向下滑动 div - 这段代码有啥问题?

天天向上的力量为啥dayfactor=0.01没有出现在循环内?