我对“if”语句做了一个快速测试,下面的代码片段产生了预期的打印输出。你知道吗
案例1
x = True
if x:
print("Roses are red")
结果在解释程序中,>;>;玫瑰是红色的
此外:
type(x)
>>> <class 'bool'>
一如预期。你知道吗
然后我试着:
案例2
x = "True"
if x:
print("Roses are red")
我又得到了结果:玫瑰是红色的
以及:
>>> type(x)
<class 'str'>
在第二种情况下,有人能解释为什么要执行“if condition is confirated”(如果这是描述情况的适当方式)和print()?你知道吗
我原以为正确的操作应该是
if <expression>:
<do this>
其中,“表达式”的计算结果为布尔值True时,仅执行“do this”。当“expression”是字符串时,为什么要执行“do this”?你知道吗
字符串“True”是truthy,这意味着它在if条件下的计算结果为True。你知道吗
相关问题 更多 >
编程相关推荐