Python中的/与//的区别


在github的项目中的水仙花例题中:

1 for num in range(100,1000): 2     low = num//10
3     mid = num//10%10
4     high= num//100
5     if mid**3+low**3+low**3==num: 6         print(num,end=' ')

中//与 / 的区别在《蟒蛇》书中没看见

//    ---表示的是相除,然后向下取整

/   ----表示的是浮点数相除,除完之后,是浮点数的结果。

问题,在/与//的应用中会出现整数与浮点数判定的情况,而具体的解释自己也没发现合理的解释:

(问题留存)

例如:百钱买百鸡的古典问题:

1 for x in range(1,20): 2     for y in range(1,33): 3         z = 100-x-y 4         if x*5+y*3+(z/3)==100: 5             print(x,y,z)

此处的z/3和后面的==100(int)就牵扯到了int与float的结果的判定,

正如设想的一样,条件

x*5+y*3+(z/3)==100与条件
x*5+y*3+(z//3)==100最后得到的结果是不同的。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM