语法:
用法一:
isinstance(要判断的值,要判断的类型) 返回的是真或者假
用法二:
isinstance(要判断的值, (可能的类型1,可能的类型2 … ) ) 如果有一个类型满足,返回的是真否则为假
数据类型
int float bool complex str list tuple set dict
# 用法一
res = isinstance(5,int)
res = isinstance("abc" , str)
print(res)
# 用法二
var = "1ab"
res = isinstance(var , (int , str , list))
print(res)
以冒号作为开始,用缩进来划分相同的作用域,这个整体是一个代码块
作用域:作用的区域
流程: 代码执行的过程
控制: 对代码执行过程的一种管控就是流程控制
三大结构
1.顺序结构 : 默认代码从上到下执行
2.分支结构 : 4种
3.循环结构 : for … in while循环
分支结构:
1.单项分支
if 条件表达式:
code1
code2
如果条件表达式成立,返回True条件成立,执行对应的代码块,反之不执行
2.双项分支
if 条件表达式:
code1
code2 ...
else:
code3 ..
code4 ..
如果条件表达式成立,执行if对应的代码块
如果条件表达式不成立,执行else对应的代码块
if 代码块也叫做真区间
else 代码块也叫做假区间
3.多项分支
if 条件表达式1:
code..
code..
elif 条件表达式2:
code ...
code...
elif 条件表达式3:
code...
else:
code ..
如果条件表达式1成立,返回True,执行对应的代码块,如果不成立,向下执行
如果条件表达式2成立,返回True,执行对应的代码块,如果不成立,向下执行
如果条件表达式3成立,返回True,执行对应的代码块,如果不成立,向下执行
直到最后,任何条件都不满足,执行else这个分支的代码块
elif 可以出现0次或者多次
else 可以出现0次或者1次
4.巢状分支(单项分支 双项分支 多项分支的互相嵌套)
例如
youqian = False
youfang = True
youche = False
youyanzhi = False
youtili = True
if youqian == True:
if youfang == True:
if youche == True:
if youyanzhi == True:
if youtili == True:
print("老娘要嫁给你了,等着接盘把,老弟")
else:
print("恭喜你~ 成为我的1号备胎")
else:
print("你可以去韩国整整容,再回来")
else:
print("出门左拐,是2路汽车,车票2元,微信转账")
特征:减少代码冗余,提升代码效率
while 条件表达式:
code..
code..
1.初始化一个变量
2.写上循环的判断条件
3.自增自减的变量值
打印1 ~ 100:
i = 1
while i<=100:
# 这个地方写上要执行的逻辑
print(i)
i+=1 # i = i + 1
"""
初始化一个变量i
第一次循环
i = 1 , i <= 100 条件成立,执行循环
print(i) 1
i+=1 => 2
第二次循环
i = 2 , i <= 100 条件成立,执行循环
print(i) 2
i+=1 => 3
第三次循环
i = 3 , i <= 100 条件成立,执行循环
print(i) 3
i+=1 => 4
....
什么时候结束?
当i = 101时候 判断 i <= 100 条件不成立False,不执行循环
循环结束...
"""
计算1~100的累加和:
i = 1
total = 0
while i<=100:
# 这个地方写上要执行的逻辑
total += i # total = total + i
i+=1 # i = i + 1
print(total) # 5050
"""
# 代码解析
第一次循环
i = 1 i<=100 条件成立,执行循环
total += i => total = total + i => total = 0 + 1
i+=1 => i = 2
第二次循环
i = 2 i<=100 条件成立,执行循环
total += i => total = total + i => total = 0 + 1 + 2
i+=1 => i = 3
第三次循环
i = 3 i<=100 条件成立,执行循环
total += i => total = total + i => total = 0 + 1 + 2 + 3
i+=1 => i = 3
....
依次循环
什么时候结束?
total = 0 + 1 + 2 + 3 + .... + 100 = 5050
i+=1 => i = 101 i<=100 这个条件不成立 , 不执行循环体
到此,循环终止
"""
死循环 (条件永远为真)
"""
while True:
print(1)
"""
print("<======>")
# 方法二
total = 0
i = 1
sign = True
while sign:
total += i
i += 1
# 手动加上终止的条件
if i == 101:
sign = False
print(total)
1.打印一行十个小星星
i = 0
while i <10:
# 写上代码逻辑
print("*",end="")
i+=1
2.通过打印变量,直接输出一行十个小星星
i = 0
strvar = ""
while i < 10:
# 逻辑
strvar += "*" # "*" "**" "***" "****" ... **********
i+=1
print(strvar)
**字符串拼接 **
strvar1 = "我爱你,"
strvar2 = "美丽的祖国"
res = strvar1 + strvar2
print(res)
res += ",和壮阔的大好河山!" # res = res + ,和壮阔的大好河山!
print(res)
3.打印一行十个小星星,奇数个打印★,偶数个打印☆
"""
★☆★☆★☆★☆★☆
***任意数和n取余,范围是多少? 0 ~ (n-1)***
n = 2
0 % 2 = 0
1 % 2 = 1
2 % 2 = 0
3 % 2 = 1
4 % 2 = 0
5 % 2 = 1
n = 4
0 % 4 = 0
1 % 4 = 1
2 % 4 = 2
3 % 4 = 3
4 % 4 = 0
5 % 4 = 1
6 % 4 = 2
7 % 4 = 3
8 ....
"""
i = 0
while i < 10:
# 写上代码逻辑
if i % 2 == 0:
print("★",end="")
else:
print("☆",end="")
i+=1
4.一个循环打印十行十列小星星
"""
**********
**********
**********
**********
**********
**********
**********
**********
**********
**********
0123456789
**********
10111213141516171819
* * * * * * * * * *
**********
20~29
**********
30~39
**********
40~49
**********
...
90~99
**********
9 19 29 39 49 59 .. 99
if i % 10 == 9
"""
i = 0
while i<100:
# 打印星星
print("*",end="")
# 打印换行
if i % 10 == 9:
print()
i+=1
5.一个循环打印十行十列隔列变色小星星
"""
★☆★☆★☆★☆★☆
★☆★☆★☆★☆★☆
★☆★☆★☆★☆★☆
★☆★☆★☆★☆★☆
★☆★☆★☆★☆★☆
★☆★☆★☆★☆★☆
★☆★☆★☆★☆★☆
★☆★☆★☆★☆★☆
★☆★☆★☆★☆★☆
★☆★☆★☆★☆★☆
"""
i = 0
while i<100:
# 打印星星
if i % 2 == 0:
print("★",end="")
else:
print("☆",end="")
# 打印换行
if i % 10 == 9:
print()
i+=1
6.一个循环打印十行十列隔行变色小星星
"""
★★★★★★★★★★
☆☆☆☆☆☆☆☆☆☆
★★★★★★★★★★
☆☆☆☆☆☆☆☆☆☆
★★★★★★★★★★
☆☆☆☆☆☆☆☆☆☆
★★★★★★★★★★
☆☆☆☆☆☆☆☆☆☆
★★★★★★★★★★
☆☆☆☆☆☆☆☆☆☆
"""
"""
***任意数和n进行地板除,会出现n个相同的数字***
0 // 2 = 0
1 // 2 = 0
2 // 2 = 1
3 // 2 = 1
4 // 2 = 2
5 // 2 = 2
0 // 5 = 0
1 // 5 = 0
2 // 5 = 0
3 // 5 = 0
4 // 5 = 0
5 // 5 = 1
6 // 5 = 1
7 // 5 = 1
8 // 5 = 1
9 // 5 = 1
10 // 5 = 2...
...
0 // 10 = 0
1 // 10 = 0
2 // 10 = 0
3 // 10 = 0
4 // 10 = 0
5 // 10 = 0
6 // 10 = 0
7 // 10 = 0
8 // 10 = 0
9 // 10 = 0
10 // 10 = 1
...
19 // 10 = 1
0 ~ 9 // 10 会出现10个相同的0
10 ~ 19 // 10 会出现10个相同的1
20 ~ 29 // 10 会出现10个相同的2
...
90 ~ 99 // 10 会出现10个相同的9
0 ~ 9
"""
i = 0
while i < 100:
# 打印星星 i // 10 范围是0 ~ 9
if i // 10 % 2 == 0:
print("★",end="")
else:
print("☆",end="")
# 打印换行
if i % 10 == 9:
print()
i+=1