[问题] 我感觉使用float优于int这样正确吗?

楼主: loveyou9527 (省钱小弟)   2020-07-19 16:30:05
最近在做练习题
比如这题
Enter Hours: 35
Enter Rate: 2.75
Pay: 96.25
x = float(input('Enter Hours:'))
y = float(input('Enter Rate:'))
z = x*y
print(z)
x的数字是整数,但是使用float,也是会有答案跑出来
这让我感觉以后只要使用float就好,不太需要用到int
这样的思考有啥盲点吗?
作者: jigfopsda (jigfopsda)   2020-07-19 16:54:00
浮点数有时会有一点误差(ieee754) 误差可以接受就没差
作者: IcecreamHsu (冰淇淋)   2020-07-19 17:05:00
个人觉得应该要考虑语意 对于一定不会出现小数的变量(ex: counter) 还是取int比较清楚
楼主: loveyou9527 (省钱小弟)   2020-07-19 17:23:00
明白了,还是要看需求
作者: alvinlin (林矜业)   2020-07-19 19:04:00
还有就是占用的内存大小不同吧?通常选择变量的型态和处理上的方便性、占用内存的大小、处理的速度、目标的资料结构等因素有关
作者: WayneHong (韦恩咖啡)   2020-07-20 00:13:00
int有时候自动无条件舍去也是挺方便的
作者: HuangJC (吹笛牧童)   2020-07-21 16:17:00
对 compile 式的语言,当然内存及速度差别就很大但对于 script 式的语言,要看它的实作方式会觉得整数只是没小数的浮点数,这点人类本就这样想以人类语意产生的 script 本来就可以这样写 XDfor loop 或许真的用整数实作有差;但那也可是部份最佳化python3 让我觉得进一步往我这说法靠拢(虽然我很不接受;我很熟 C,比较喜欢 python2 的做法)如果 script 认为自己不是处理效率,而是要往人类语意靠拢,那么未来 python4 干脆废掉整数,用没小数的浮点数取代,也不是没可能..让你..所思即所得结论:有效率/精准才计较 int,没管可能就没有 int(python4应该不会这样胡搞,但我会;有时我们为了需求会自己打造 script parser 这种东西;打造一次就懂)
作者: froce (froce)   2020-07-22 17:22:00
胡搞瞎搞就是js啊,number和string还可以相加自动转型呢

Links booklink

Contact Us: admin [ a t ] ucptt.com