python不相等的两个字符串的如果条件判断为真正的详解

  

今天遇到一个非常基础的问题,结果搞了好久好久.....赶快写一篇博客记录一下:

  

本来两个不一样的字符串,在如果的条件判断中被判定为真,下面是错误的代码:

        test_str='快乐'   如果test_str==谩颉炖帧?#这样如果判断永远是真的,写法错误   打印(“aa”)   其他:   打印(bbbb)      

这是正确的代码:

        test_str='快乐'   如果test_str==谩騮est_str==翱炖帧?   打印(“aa”)   其他:   打印(bbbb)      

  

<强> 1。条件和条件语句

  

在编写的程序中,语句都是逐条执行的。现在更进一步,让程序选择是否执行特定的语句块。

  

1)布尔值的用武之地

  

真值也称布尔值,是以在真值方面做出了巨大贡献的George Boole命名的。

  

用作布尔表达式(如用作如果语句中的条件)时,下面的值都将被解释器视为假:

  
  

假没有0”“()[]{}

     

换而言之,标准值错误和没有,各种类型(包括浮点数,复数等)的数值0,空序列(如空字符串,空元组和空列表)以及空映射(如空字典)都被视为假,而其他各种值都被视为真,包括特殊值True。

  

正如Python老手劳拉·克莱顿指出的,这种差别类似于“有些东西”和“没有东西”的差别,而不是真和假的差别。

  

这意味着任何Python值都可解释为真值。乍一看这有点令人迷惑,但也很有用。虽然可供选择的真值非常多,但标准真值为True和False。在有些语言(如C语言和2.3之前的Python版本)中,标准真值为0(表示假)和1(表示真)。实际上,真和假不过是0和1的别名,虽然看起来不同,但作用是相同的。

        在在在真正的   真正的   在在在假   假   在在在真的==1   真正的   在在在错误==0   真正的   在在在真+假+ 42   43   之前      

因此,如果你看到一个返回1或0的表达式(可能是使用较旧的Python版本编写的),就知道这实际上意味着真或假。

  

布尔值True和False属于类型bool,而bool与列表,str和元组一样,可用来转换其他的值。

        在在在bool(“我想,故我在”)   真正的   在在在bool (42)   真正的   在在在bool (")   假   在在在布尔值(0)   假   之前      

鉴于任何值都可用作布尔值因此你几乎不需要显式地进行转换(Pthon会自动转换)

  

虽然[]和“都为假(即bool ([])==bool (" ")==False),但它们并不相等(即[]!=" ")。

  

对其他各种为假的对象来说,情况亦如此(一个更显而易见的例子是()!=False)。

  

<强> 2)有条件地执行和如果语句

  

真值可合,并先来看看真值可用来做什么,请尝试运行下面的脚本:

        name=输入('你的名字是什么# 63;')   如果name.endswith (“Gumby”):   打印(“你好,Gumby先生”)   之前      

这就是如果语句,让你能够有条件地执行代码。这意味着如果条件(如果和冒号之间的表达式)为前面定义的真,就执行后续代码块(这里是一条打印语句);如果条件为假,就不执行。

  

<强> 3)else子句

  

在前一节的示例中,如果你输入以Gumby结尾的名字,方法name.endswith将返回真,导致后续代码块执行——打印问候语。如果你愿意,可使用else子句增加一种选择(之所以叫子句是因为其他不是独立的语句,而如果是语句的一部分)。

        输入(name='你的名字是什么# 63;')   如果name.endswith (“Gumby”):   打印(“你好,Gumby先生”)   其他:   打印(“你好,陌生人”)   之前      

在这里,如果没有执行第一个代码块(因为条件为假),将进入第二个代码块。

  

还有一个与如果语句很像的“亲戚”,它就是条件表达式——C语言中三目运算符的Python版本。下面的表达式使用如果和其他人确定其值:

  
  

状态="朋友"如果name.endswith (“Gumby”)“陌生人”

     

如果条件(紧跟在如果后面)为真,表达式的结果为提供的第一个值(这里为“朋友”),否则为第二个值(这里为“陌生人”)。

  

<强> 4)elif子句

  

要检查多个条件,可使用elif.elif是else if的缩写,由一个如果子句和一个else子句组合而成,也就是包含条件的else子句。

python不相等的两个字符串的如果条件判断为真正的详解