isinstance、流程控制(单项、双项、多项、巢状)

1、isinstance判断类型

# 方式一:判断是否是这个数据类型
a = "我是字符串"
res = isinstance(a,str)
print(res) # True
res1 = isinstance(a,int)
print(res1) # False

# 方式二:判断是否属于这几种类型中的一个,用元祖来装判断的数据类型
b = "字符123()"
res3 = isinstance(b,(str,dict))
print(res3) # True
res4 = isinstance(b,(int,set,tuple,dict))
print(res4) # False

2、流程控制

2.1 代码块:以冒号为开始,用缩进来划分作用域

2.2 顺序结构:默认代码从上到下执行,如上图代码

2.3 分支结构:细分为4种

2.3.1 单项分支:

"""
if 条件表达式:
    代码1
    代码2
如果条件表达式成立,返回True,执行对应的代码,反之不执行
"""
tianqi = ""
if tianqi == "":
    print("去海南玩")
    print("然后去看南海观音")

2.3.2 双项分支:

"""
if 条件表达式:
    代码1
    代码2
else:
    代码3
    代码4
如果条件表达式成立,则执行if条件下的代码,反之则执行else下的代码
if代码块也叫做真区间
else代码块也叫做假区间
"""
cunkuan = 800
if cunkuan>300:
    print("你有钱,可以买上海郊区的房子")
else:
    print("你没钱,买老家的房子或者租房吧")

2.3.3 多项分支:

"""
if 条件表达式1:
    代码1
    代码2
elif条件表达2:
    代码3
    代码4
elif条件表达式3:
    代码5
    代码6
else:
    代码7
    代码8
如果条件表达:1成立,则执行if条件下的代码,
如果条件表达式2成立,则执行条件2下的代码,
如果条件表达式3成立,则执行条件3下的代码
如果所有条件都不成立,则执行else的代码
"""
cunkuan = 1500
if cunkuan>1000:
    print("你真有钱,可以买上海陆家嘴的房子")
elif cunkuan >800:
    print("你有钱,可以买上海市区的房子")
elif cunkuan>500:
    print("还可以,买郊区的房子吧")
else:
    print("你没钱,买老家的房子或者租房吧")

2.3.4 巢状分支:单项、双项、多项分支的组合

cunkuan = 300
if cunkuan>500:
    if cunkuan > 800:
        if cunkuan >1000:
            if cunkuan >1500:
                if cunkuan > 6000:
                    print("你真有钱,可以买上海陆家嘴400平的别墅")
                else:
                    print("还是可以的,买市区300平的大房子吧")

        else:
            print("恭喜你,市区200平的大房子归你了")
    else:
        print("可以买150平的房子")
else:
    print("继续存钱吧")

3、while循环

# 语法:
"""
while 表达式:
    代码1
    代码2
注意:初始化一个变量
      写上循环的判断条件
      自增自减的变量值
"""
# 如果while条件永远为真,则while是一个死循环,需要手动加上终止的条件

3.1 案例一:打印一行十个小星星

i = 0
while i <10:
    print("*",end="")
    i += 1
# **********

3.2 案例二:通过打印变量,直接输出一行十个小星星

i = 0
var = ""
while i <10:
    var += "*"
    i += 1
print(var)
# **********

3.3 案例三:打印一行十个小星星,奇数个打印★,偶数个打印☆

i = 0
while i <10:
    if i % 2 == 1:
        print("",end="")
    else:
        print("",end="")
    i += 1
# ☆★☆★☆★☆★☆★

3.4 案例四:一个循环打印十行十列小星星

i = 0
while i <100:
    print("*", end="")
    if i % 10 == 9:
        print()
    i += 1
# **********
# **********
# **********
# **********
# **********
# **********
# **********
# **********
# **********
# **********

3.5 案例五:一个循环打印十行十列隔列变色小星星

i = 0
while i <100:
    if i % 2 == 1:
        print("",end="")
    else:
        print("",end="")
    if i % 10 == 9:
        print()
    i += 1
# ☆★☆★☆★☆★☆★
# ☆★☆★☆★☆★☆★
# ☆★☆★☆★☆★☆★
# ☆★☆★☆★☆★☆★
# ☆★☆★☆★☆★☆★
# ☆★☆★☆★☆★☆★
# ☆★☆★☆★☆★☆★
# ☆★☆★☆★☆★☆★
# ☆★☆★☆★☆★☆★
# ☆★☆★☆★☆★☆★

3.6 案例六:一个循环打印十行十列隔行变色小星星

i = 0
while i < 100:
    if i // 10 % 2 == 0:
        print("",end="")
    else:
        print("",end="")
    if i % 10 == 9:
        print()
    i += 1
# ★★★★★★★★★★
# ☆☆☆☆☆☆☆☆☆☆
# ★★★★★★★★★★
# ☆☆☆☆☆☆☆☆☆☆
# ★★★★★★★★★★
# ☆☆☆☆☆☆☆☆☆☆
# ★★★★★★★★★★
# ☆☆☆☆☆☆☆☆☆☆
# ★★★★★★★★★★
# ☆☆☆☆☆☆☆☆☆☆

 

posted on 2020-05-05 18:54  fdsimin  阅读(215)  评论(0编辑  收藏  举报