龙空技术网

关于 python 中的 if 判断,你知道多少?

老吴与编程 88

前言:

当前你们对“pythonif非操作”大致比较看重,兄弟们都想要分析一些“pythonif非操作”的相关文章。那么小编在网摘上汇集了一些对于“pythonif非操作””的相关内容,希望小伙伴们能喜欢,我们一起来学习一下吧!

关于 if xxx

`if xxx` 是 Python 中的条件语句,用于判断变量 `xxx` 是否为真。如果 `xxx` 为真,则执行 `if` 语句块中的代码;否则,跳过 `if` 语句块,执行后面的代码。

在 Python 中,以下值被视为假:

- `False`

- `None`

- `0`(包括 `0.0`)

- 空字符串 `''`(包括 `""`)

- 空列表 `[]`

- 空元组 `()`

- 空字典 `{}`

除了以上值之外的所有值都被视为真。

以下是一个使用 `if a` 的示例:

python a = 10if a:   print("a 是真值")else:   print("a 是假值")

在这个示例中,变量 `a` 的值为 `10`,因为 `10` 是一个非零数,所以 `if a` 的条件为真,执行 `if` 语句块中的代码,输出 `a 是真值`。

关于 if xxx==xxx

在 Python 中,`==` 运算符用于比较两个对象的值是否相等,如果两个字符串的值相等,则返回 `True`,否则返回 `False`。例如:

str1 = "hello"str2 = "world"str3 = "hello"if str1 == str2:   print("str1 和 str2 相同")else:   print("str1 和 str2 不相同")if str1 == str3:    print("str1 和 str3 相同")else:    print("str1 和 str3 不相同")

在这个示例中,`str1` 的值为 `"hello"`,`str2` 的值为 `"world"`,`str3` 的值为 `"hello"`。因为 `str1` 和 `str3` 的值相等,所以输出 str1 和 str2 不相同和 `str1 和 str3 相同`。

关于 if xxx is xxx

在 Python 中, `is` 运算符用于比较两个对象是否是同一个对象,如果两个字符串是同一个对象,则返回 `True`,否则返回 `False`。例如:

str1 = "hello"str2 = "world"str3 = "hello"if str1 is str2:    print("str1 和 str2 是同一个对象")else:   print("str1 和 str2 不是同一个对象")if str1 is str3:    print("str1 和 str3 是同一个对象")else:   print("str1 和 str3 不是同一个对象")

在这个示例中,`str1` 的值为 `"hello"`,`str2` 的值为 `"world"`,`str3` 的值为 `"hello"`。因为 `str1` 和 `str3` 是同一个对象,所以输出 `str1 和 str3 是同一个对象`。

ps:

在 Python 中,字符串是不可变对象,也就是说,一旦创建了一个字符串对象,它的值就不能被修改。

因此,当你创建一个新的字符串时,Python 解释器会在内存中为它分配一块新的空间,然后将字符串的值存储在这个空间中。

在这个代码中,`str1` 和 `str3` 都是字符串常量,它们的值都是 `"hello"`。

当 Python 解释器执行这个代码时,它会先创建一个字符串对象,然后将这个对象的引用赋值给 `str1`。

接着,它会发现 `str3` 的值也是 `"hello"`,因此不需要再创建一个新的字符串对象,而是将 `str3` 的引用指向已经存在的那个字符串对象。

因此,`str1` 和 `str3` 引用的是同一个字符串对象,它们在内存中的地址是相同的。

#计算机##有趣##涨知识##互联网##python##程序员#

标签: #pythonif非操作