0. 请问 Python 是否支持链式比较?voC~RW
^dUP)G.5,YBf0[?J:r;13e_|cZ*
答:支持。来自:
[8C(nHWfYQI.]#al3=m% p!"2_
解析:像 3 < 4 < 5 这种就叫链式比较,事实上相当于 3 < 4 and 4 < 5 这么流弊的技能,不是所有语言都支持的哦。+Q{wX
@X(`'tb:hd}~ay"7 AP)0f&JQ
5e3+x#GbS1'8n(<QOB-p*TqI@N|0^A
1. 请问下面两段代码有什么区别呢?]m|nV
+s1dLE}gV3Z`=<JTwBnp
代码 A:来自
- >>> if bool(250):
- ... print("Yeah, you are right.")
代码 B:版权属于:https://fishc.com.cn
&;c@5<|U:32b`~A6k>g {M,FXDo[
- >>> if 250:
- ... print("Yeah, you are right.")
答:没有区别。版权属于:https://fishc.com.cn
Mn#"U$RS!|Gu=C)Owkz5VpD@Qq43i
解析:Python 的真值测试它是会自动进行的,所以不使用 bool() 函数也没有任何问题。_(Gmh
^mzOd-N(sTUeGfatR)5_%Z:
zoZF$uyne!&g4Br6Ti-*]GMdPq^k
2. 在 Python 中,所有的对象都可以进行真值检测,对吗?<Pw"U!(3`K
?$U4K*8k)>-MY[}&`Qp^=3C91l] %!
答:对的。Powered 、
#I>p|4'O{@<~Lmwn" Ph:Ykl7E
解析:请相信上面的答案是对的。Powered】
OYSe9-dJD% ]Tk"Z6ql~
pC-y0T,*o@$cG;6)H94e#`mgfP
3. 请问下面表达式的值是什么??CA2Y@_
YXH"%0h#94+$R@{QoPw?pfx;u!
- >>> not 3 == 5
答:True。来自:https://fishc.com.cn
Blg,W-PidX3&`rmIOz)<jTKhu
解析:由于 3 == 5 的结果是 False,not False 即 True。那肯定有童鞋会问:“为啥不是从左到右,先运算 not 3 的结果是 False,然后 False == 5 是 False 才对丫?”,嗯,这涉及到一个优先级问题,这一点在下一节课中有仔细的讲解,带着疑问继续快乐地学习吧^o^NvW'Qf5
p,?mr;%1KxM hTynlWoXa
}^jh@-(xwmeNM|,{n+]1roL"
4. 在 Python 中,True 和 False 两个关键字是完全等值于 1 和 0 的,对吗?"~9Pq[Y36
Fz^r?60LR-_enE>S;Cuh!f{
答:对的。来自
)H?$*]tIQR@-+Z8>cunl4=Y
解析:其实布尔类型其实就是特殊的整数类型,True 和 False 就是 1 和 0 的别称,但作为条件,使用 True 和 False 显然比 1 和 0 要更好理解。 kKc!&1
6Ru@G+o;eIh|E04pM{}t
7,"s6)l9@O*+m|iMe'p[10?Z:g-#V
5. 请问下面代码打印的内容是什么?<dhUyE
S| 6t_C%z):sf`"-a(?!yG[
- >>> print(5 > 3 and 4)
答:4。Powered by https://fishc.com.cn
6 b0P!jO:prm`q"y2cF.~<owu]W
解析:你是不是觉得它应该返回个 True 什么的丫?!不的,逻辑运算符的计算结果不一定是 True 或者 False。这一点在下一节课中有仔细的讲解,带着疑问继续快乐地学习吧^o^5_jhU
R`dzGaJ"8V-]LCf&0Ub^;%<u,g3
P3~qj-pB2!;%I0dwix6FL*$^rh
6. 请问下面代码打印的内容是什么?Vj;T_,w
dC!#~FSR=xuO+5h]-"1r
- >>> from fractions import Fraction
- >>> print(Fraction(1, 2) * 2)
答:1。来自:
.]?}'ik0T(dg)mU^9Ba_p
解析:Fraction(a, b) 表示分子为 a,分母为 b 的分数,Fraction(1, 2) 就是二分之一的意思啦,所以乘以 2 的结果当然是等于 1 啦。 {
JISUANUAN pr9@?g
计算:
1708227363155544, 4636617128565048的约分结果
from fractions import Fraction Fraction(1708227363155544, 4636617128565048)
计算结果:Fraction(7, 19)
fractions -- 有理数
fractions 模块提供了对有理数运算的支持。 一个 Fraction 实例可以由一对整数,或者一个有理数,或者字符串进行构造。 class fractions.Fraction(numerator=0, denominator=1) 解析:numerator 和 denominator 参数是 numbers.Rational 的实例,并且返回一个值为 numerator / denominator 的 Fraction 实例。如果 denominator 参数为 0,将抛出 ZeroDivisionError 异常。 class fractions.Fraction(other_fraction) 解析:other_fraction 参数(另一个分数)是 numbers.Rational 的实例,并返回具有相同值的 Fraction 实例。 class fractions.Fraction(float) 解析:返回一个与 float 参数具有相同值的 Fraction 实例。 注意:由于众所周知的浮点数问题,导致 Fraction(1.1) 并不完全等于 11 / 10,所以 Fraction(1.1) 也不会返回 Fraction(11, 10)。 class fractions.Fraction(decimal) 解析:返回一个与 decimal.Decimal 参数具有相同值的 Fraction 实例。 注意:由于众所周知的浮点数问题,导致 Fraction(1.1) 并不完全等于 11 / 10,所以 Fraction(Decimal(1.1)) 也不会返回 Fraction(11, 10)。 class fractions.Fraction(string) 解析:参数是一个 string 或 unicode 实例,其常见形式如下。
可选的 sign 可以是 + 或 -,然后 numerator 和 denominator(可选)是十进制数字。 无论哪种形式,输入字符串都可能有前导和/或尾随空格。 下面是一些例子,大家可以参考一下 fraction 模块的用法:
Fraction 类继承自抽象基类 numbers.Rational,并实现该类的所有方法和操作。 Fraction 实例是可哈希的,所以应该被视为不可变对象。 另外,Fraction 拥有下面这些属性和方法: numerator 分数的分子。 denominator 分数的分母。 from_float(flt) 构造并返回一个分数,用于表示 flt 参数的确切值。 flt 参数必须是一个浮点数。 注意:由于众所周知的浮点数问题,Fraction.from_float(0.3) 跟 Fraction(3, 10) 不是相同值。 from_decimal(dec) 构造并返回一个分数,用于表示 dec 参数的确切值。 dec 参数必须是一个 decimal.Decimal 实例。 limit_denominator(max_denominator=1000000) 查找并返回与自身最接近的分数,max_denominator 参数指定分母可以接受的最大值。 这种方法对于寻找给定浮点数的有理逼近是有很用的:
或者用于恢复表示为浮点数的有理数:
__floor__() 返回一个小于或等于 self 的最大整数。 也可以通过 math.floor() 函数来实现该方法:
__ceil__() 返回一个大于或等于 self 的最小整数。 也可以通过 math.ceil() 函数来实现该方法。 __round__() 返回一个最接近 self 的整数,四舍五入。 __round__(ndigits) 返回一个最接近 self 的有理数,ndigits 参数指定小数部分四舍五入的位数。 |
评分
彩蛋:
有鱼油提出 “3200 年不是闰年,应该是平年”,
由于涉及到历史和未来的问题,三言两语说不清楚,
这里小甲鱼这里花了两天的时间写了一篇文章进行回复,
写一段代码,输入3次,判断是闰年还是平年
i=0 while i<3: temp = input("请输入任意年份:") year = int(temp) i+=1 if year % 4 == 0 and year % 100 == 0: print(str(year)+'是世纪闰年') elif year % 4 == 0 and year % 100!= 0: print(str(year)+'是普通闰年') else: print(str(year)+'是平年') print('验证年份试验结束!')标签:fractions,10,False,python,代码,denominator,Fraction From: https://www.cnblogs.com/mmjmaomaochong/p/17918736.html