像计算机科学家一样学习python(4)

条件和递归

Python学习笔记-像计算机科学家一样学习python(4)

条件和递归

练习

5-1

Python
import time
print(type(time.time()))
print(time.time())
>>><class 'float'>
>>>1575635564.5293071

可知时间是浮点数,那么接下来,胜利的方程式已经得出了。

Python
import time
s = int(time.time())
m = int(s / 60)
h = int(m / 60)
d = int(h / 24)
print(s, m, h, d)

5-2

Python
def check_fermat(a, b, c, n):
        if n > 2 and a**n + b**n == c**n:
                print('天啊,费马弄错了!')
        else:
                print('不,那样不行!')
check_fermat(1, 2, 3, 4)
def check_fermat_int(a, b, c, n):
        a = int(a)
        b = int(b)
        c = int(c)
        n = int(n)
        check_fermat(a, b, c, n)
check_fermat_int(1.1, 2.2, 3.3, 4.4)

5-3

虽然很简单,但是需要注意的是,input返回的值是str,而想2.1这样带小数的数无法直接从str强制转换成int,所以需要在中间转为float的值。

Python
def is_triangle(a, b, c):
        if a + b < c or a + c < b or b + c < a:
                print('no')
        else:
                print('yes')
def triangle():
        a = int(float(input('a\n')))
        b = int(float(input('b\n')))
        c = int(float(input('c\n')))
        is_triangle(a, b, c)
triangle()
最后编辑于
文章链接: http://pheustal.com/2019/12-06/thinkpython4
本作品采用CC-BY-SA许可。