3.1数字类型及操作

1.整数型

计算无限制,想算多大就算多大。
image.pngimage.png

2.浮点型

image.png
不确定尾数问题在很多语言中都存在,涉及到计算机计算的内部原理。
image.png
二进制和十进制不存在严格的对等关系。用二进制表示0.1时,是一个无限的循环销售,但是计算机截取其中的53位,让他无限的接近0.1。
image.png

「==」两个等号表示一种判断。
可以通过round函数判断浮点数计算和浮点数函数间的一种关系。
image.png
image.png

3.复数型

在众多语言中,只有Python语言提供了复数类型。
image.png
在空间变换中应用广泛,但普通时候使用不多。
image.png

4.数字运算操作符

简称「数字符」
image.png
其中,在Python语言中,除「x/y」带来的结果的浮点数类型,和我们数据除法结果一致。但是在其它编程语言中,两个整数的除并不是浮点数结果。
提供了一个整数除的方式。
image.png
image.png

不同的数字类型之间是可以进行混合运算的,它生成的结果类型,一般生成一种最宽的类型。
image.png

5 数字运算函数

用函数的方式达到数字运算符的效果
image.png
image.png
数据类型转换函数
image.png

3.2 实例3:天天向上的力量

image.png
image.png
第一问:千分之一的力量
一天进步千分之一:一年后1.44
一天退步千分之一:一年后0.69
image.png
第二问:千分之五和百分之一的力量
image.png
第三问:工作日的力量
image.png
image.png
第四问:工作日的努力
B君要在工作日努力多少倍,才能赶上A君的年进步效果?
image.png
image.png
运行结果:0.9
工作日努力要加一杯倍,才能达到每天都努力的那些人的效果。
image.png
image.png
如果以两倍的努力持续365天,周末不休息,一年进步962倍,相当惊人。
image.png
经过这个案例,每天进步一点点的力量强大。

3.3 字符串类型及操作

image.png

3.4 time库的使用

时间获取

image.png
时间戳:表示从1970-1-1 00:00:00开始,到当前这一时刻以秒为单位的数值。

ctime可以帮助我们知道当前系统时间是多少。

gmtime可以用来获取当前时间,并转化为计算机可处理的内容。
image.png这三个时间函数,可以对时间做所有可能的后续处理。

时间格式化

将时间信息用一种变量形式合理输出。以下为案例:
image.png
对于时间,你希望它通过怎样的方式输出,就使用详细的格式化字符串。如下:
image.png
image.png
当然,也可以通过将字符串反格式化形成特定时间,但这只在特殊情况下使用。

程序计时

image.png
以上使用简单的减法来计算时间。

image.png
可以让程序休眠(停滞)3.3秒后再向下运行。

3.5 文本进度条

刷新本质:用后打印的字符覆盖之前的字符
单行刷新效果:使用\r函数,可以每次回到行首输出结果,达到覆盖刷新效果
image.png
执行后效果如下:
image.png

进程展示方式与人心理关系

image.png
2007年,由卡内基梅隆大秀额研究者设计的9种进度条,观察展示方式与人的心理之间的关系。
以下载文件为例,假设下载进程是稳定持续的,那计算机该如何展示下载进度呢?
image.png
方式一:忠实展示下载效果。下载10%,展示10%。
方式二:并不忠实或严格的展示下载效果。可以在下载10%时,显示下载90%,或者下载90%时,显示10%。

下面第一个函数是忠实展示,其它八种是非忠实展示。
image.png

那到底哪种时间进程方式,会让用户感觉体验更好?
这里有一个提升体验小结论:相比线性展示之外,开始展示进度条速度慢一些,而随着下载的持续,后续进度条展示的增长效果组建增加,这种方式更符合人类的心理需求。

有一个最直观的感受,如果你下载一个文件,一开始时很快下载90%,但后面过了很长一段时间,你也没有下载1%,你的心理会有很大的挫败感。但反过来呢,如果一开始下载的很慢你也能接受,但是下载的越来越快,你会觉得有惊喜感。通过计算机的程序控制,即使下载总时间一样,但将转变用户的使用体验。