python 作业9

问题:

0.请问 Python 是否支持链式比较?

支持

 

1.请问下面两段代码有什么区别呢?

 

>>> if bool(250):
...     print("Yeah, you are right.")
>>> if 250:
...     print("Yeah, you are right.")

没区别 这里python会自己检测是否是真值 不需要用bool

2.在 Python 中,所有的对象都可以进行真值检测,对吗?

对的

 

3.请问下面表达式的值是什么?

>>> not 3 == 5

 是ture

表达 3不等于5   所以 是ture

4.在 Python 中,True 和 False 两个关键字是完全等值于 1 和 0 的,对吗?stV

 对 其实布尔类型其实就是特殊的整数类型,True 和 False 就是 1 和 0 的别称,但作为条件,使用 True 和 False 显然比 1 和 0 要更好理解。

5. 请问下面代码打印的内容是什么?

>>> print(5 > 3 and 4)

and是 与计算 与计算就需要 两边都计算 根据短路逻辑   5>3 真值 随后计算 4是否是真 所以就是输出4  

6.请问下面代码打印的内容是什么?

>>> from fractions import Fraction
>>> print(Fraction(1, 2) * 2)

1

Fraction(a, b) 表示分子为 a,分母为 b 的分数,Fraction(1, 2) 就是二分之一的意思啦,所以乘以 2 的结果当然是等于 1 啦。

动动手:

0. 请自学 fractions 文档,并计算 1708227363155544/4636617128565048 约分后的值。

把分数转化成最简分数的过程叫做约分,比如 2/4 -> 1/2,3/9 -> 1/3。

from fractions import Fraction
print(Fraction(1708227363155544,4636617128565048))

答案是 7/19

 

1.写一个程序,判断给定年份是否为闰年

闰年(Leap Year)是为了弥补因人为历法规定造成的年度天数与地球实际公转周期的时间差而设立的。
闰年分为普通闰年和世纪闰年。
公历年份是 4 的倍数的,且不是 100 的倍数,为普通闰年(如 2020 年就是闰年);
公历年份是整百数的,必须是 400 的倍数才是世纪闰年(如 2020 年不是世纪闰年,2000 年是世纪闰年)

abc = int(input("请输入年份:"))
if abc % 400 ==0:
     print(abc,"是世纪闰年")
else:
     if abc % 4 == 0 and abc % 100 != 0:
       print(abc,"是闰年")
     else:
       print(abc,"不是闰年")

 

posted @ 2022-06-25 17:32  DICEi  阅读(74)  评论(0)    收藏  举报