6-Conditionals_and_Booleans_if_Else_Elif

if \else\ elif\ statement

Comparisons:
Equal: ==
Not Equal: !=
Greater Than: >
Less Than: <
Greater or Equal: >=
Less or Equal: <=
Object Identity: is

在python中没有switch结构,因为if else 及 elif已经足够表达清楚条件结构的逻辑了。

language = "Java"
if language == "Python":
    print("the language is Python")
elif language == "Java":
    print("the language is Java")
elif language == "JS":
    print("the language is JS")
else:
    print("No match")

and\ or\ not\ key-words

and

and 关键字两边的条件都是true后,才会执行if语句中包含的代码,只要有一个条件不满足,则会执行else中包含的代码。

user = "admin"
logged_in = True
if user == "admin" and logged_in:
    print("admin page")
else:
    print("bad Credit")  # out:admin page

or

or 关键字两边的条件任意一边为true,则会执行if语句中包含的代码,只有两边条件都不满足时,才会执行else中包含的代码。

user = "admin"
logged_in = False
if user == "admin" or logged_in:
    print("admin page")
else:
    print("bad Credit")  # out:admin page

not

not关键字将后边条件中的false变成了True,而满足了if的执行条件。为方便理解,也可认为,当想执行if not statement所包含的代码时,需要保证后边的条件语句为False

user = "admin"
logged_in = False
if not logged_in:
    print("please log in")
else:
    print("welcome")

“is” equal “==” ?

"=="判断的是其两边的对象的值是否相等,如果相等则返回True。
而"is"关键字判断的是其两边的对象是否指向同一片内存区域(是否在内存中是同一个id(资源))。

a和b分别赋值

a = [1, 2, 3]
b = [1, 2, 3]
print(id(a))  # out: 地址1
print(id(b))  # out:地址2
print(a == b)  # out: True
print(a is b)  # out: False
# a is b相当于:
print(id(a) == id(b))  # out: False

d = c

c = [4, 5, 6]
d = c
print(id(c))  # out: 地址1
print(id(d))  # out: 地址1
print(c == d)  # out: True
print(c is d)  # out: True
# c is d相当于:
print(id(c) == id(d))  # out: True

False Values:

下面是条件结构中 认为 等同于 “False"的情况,除了这些情况之外的情况,都认为是"True”

None

condition = None
if condition:
    print("True")
else:
    print("False")

Zero of any numeric type

condition = 0.0
if condition:
    print("True")
else:
    print("False")

Any empty sequence. For example, ‘’, (), [].

condition1 = ""
condition2 = ()
condition3 = []
if condition1 or condition2 or condition3:
    print("True")
else:
    print("False")

Any empty mapping. For example, {}.

condition = {}
if condition:
    print("True")
else:
    print("False")

引用

本文主要参考下列视频内容,翻译并亲测代码后形成此文,感谢视频作者的无私奉献!

6-Conditionals_and_Booleans_if_Else_Elif

猜你喜欢

转载自blog.csdn.net/Dale1991/article/details/88108337