0703Python总结-分支结构和循环结构

一.判断类型 isinstance

1.语法:

用法一
isinstance(要判断的值,要判断的类型) 返回True 或者 False
用法二
isinstance(要判断的值,(可能的类型1,可能的类型2,可能的类型3 … ) ) 如果有一个类型满足,返回的是True 否则 返回False

2.数据类型:

int float bool complex str list tuple set dict

用法一
res = isinstance(5,int)
res = isinstance("11223344",str)
res = isinstance([1,2,3],tuple)
print(res)
用法二
res = isinstance(16, (str,list,tuple)  )
print(res)

二.代码块

代码块: 以冒号作为开始,用缩进来划分作用域
作用域:作用的区域,作用的范围
代码块的注意点:
要么全都是一个tab缩进,要么全都是4个空格,不能混合使用

三.流程控制

三大结构:
顺序结构 : 默认代码依次从上到下执行
分支结构 : 4种
循环结构 : for while

1.分支结构

(1)单项分支
if 条件表达式:
	code1
	code2
当条件表达式成立,返回True,执行对应的代码块,反之不执行
(2)双项分支
if 条件表达式:
	code1
	code2
else:
	code3
	code4
如果条件表达式成立,执行if对应的代码块
如果条件表达式不成立,执行else对应的代码块

if 代码块也叫做真区间
else 代码块也叫做假区间
input 等待用户输入字符串,接受的数据是字符串

网站登录功能:
	提示用户输入对应的用户名和密码
	如果用户名admin,密码000
	提示用户,登录成功
	否则提示,登录失败
username = input("请输入您的用户名:")
password = input("请输入您的密码:")
if username == "admin" and password == "000":
	print("登录成功~")
else:
	print("登录失败~")
(3)多项分支 (多选一)
语法:
if 条件表达式1:
	code1
	code2
elif 条件表达式2:
	code1
	code2
elif 条件表达式3:
	code1
	code2
else:
	code...
	
如果条件表达式1成立,返回True,执行对应的代码块,反之则向下执行
如果条件表达式2成立,返回True,执行对应的代码块,反之则向下执行
如果条件表达式3成立,返回True,执行对应的代码块,反之则向下执行
直到最后,任何条件都不满足,执行else这个分支的代码块.

elif 可以出现0次或者多次
else 可以出现0次或者1次
(4)巢状分支 (单项分支,双项分支,多项分支的互相嵌套)
youqian = False
youfang = False
youche = False
youyanzhi = False
youtili = False

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站之后下是你家,不送了,老弟.")

2.循环结构之 while 循环

特点:减少冗余的代码,提升代码的效率

语法:
	while 条件表达式:
		code1...
		code2...		

1.初始化一个变量
2.写上循环的判断条件
3.自增自减的变量值

打印1 ~ 100 
i = 1
while i <= 100:
	# 在这个位置写要执行的逻辑
	print(i)
	i += 1 # i = i + 1

计算1~100的累加和

方法一
i = 1
total = 0
while i<=100:
	# 把所有的i值全部累加到total这个变量中
	total += i  # total = total + i
	i+=1
print(total)
方法二
total = 0
i = 1
sign = True
while sign:	
	total += i # total = total + i
	i+=1

	# 手动加上终止循环的条件
	if i == 101:
		sign = False
print(total)
"""
死循环
while True:
	print(123)
"""

四.单项循环的练习

1.打印一行十个小星星 help函数查看帮助文档

"""
help(print)
**********
"""

 (1).初始化变量
i = 0
 (2).循环判断的条件
while i < 10:
	# (4).写上自己的代码逻辑
	print("*", end="") # 打印小星星
	# (3).自增加1
	i += 1

2.通过打印变量实现一行十个小星星

字符串的拼接
var1 ="我爱你,"
var2 ="这个世界上所有的女生"
res = var1 + var2
print(res)  # 我爱你,这个世界上所有的女生
var1 +=var2 # var1 = var1 + var2
print(var1) # 我爱你,这个世界上所有的女生

# 循环10次,拼接了10个星星
i = 0
strvar = ""
while i < 10:
	strvar += "*" # strvar = '' + '*' /'*'+'*'/ '**' + '*'/ ...
	i += 1
print(strvar)

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
0~1

n = 5
0 % 5 = 0
1 % 5 = 1
2 % 5 = 2
3 % 5 = 3
4 % 5 = 4
5 % 5 = 0
6 % 5 = 1
0~4

扑克牌 4种花色 方片 草花 红桃 黑桃
"""
i = 0
while i < 10:
	# 写上代码的逻辑
	if i % 2 == 0:
		print("★", end="")
	else:
		print("☆", end="")
	i += 1

4.一个循环打印十行十列的小星星

"""
0123456789
**********               0~9
10111213141516171819
* * * * * * * * * *     10~19
**********	20~29
**********	30~39   
**********	40~49
**********	50~59
**********	60~69
**********	70~79
**********	80~89
**********	90~99

怎么才能找到 9 19 29 39 49 ... 99 这颗星星呢?
"""
i = 0
while i < 100:
	# 打印星星
	print("*", end="")
	
	# 打印换行
	if i % 10 == 9:
		print()
	i += 1

5.一个循环打印十行十列隔列换色的小星星

"""
★☆★☆★☆★☆★☆
★☆★☆★☆★☆★☆
★☆★☆★☆★☆★☆
★☆★☆★☆★☆★☆
★☆★☆★☆★☆★☆
★☆★☆★☆★☆★☆
★☆★☆★☆★☆★☆
★☆★☆★☆★☆★☆
★☆★☆★☆★☆★☆
★☆★☆★☆★☆★☆
"""
i = 0
while i < 100:
	# 打印星星
	# print("*", end="")
	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 = 1
5 // 2 = 1

0 // 6 = 0
1 // 6 = 0
2 // 6 = 0
3 // 6 = 0
4 // 6 = 0
5 // 6 = 0

6 // 6 = 1
7 // 6 = 1
8 // 6 = 1
9 // 6 = 1
10// 6 = 1
11// 6 = 1

12// 6 = 2
...

0 ~ 9	// 10 会出现10个相同的0
10~19	// 10 会出现10个相同的1
20~29	// 10 会出现10个相同的2
...

90~99	// 10 会出现10个相同的9

到此,底板除的值 范围为:0~9
"""
print("<==========>")

i = 0
while i < 100:
	# 打印星星
	if i // 10 % 2 == 0:
		print("★", end="")
	else:
		print("☆", end="")
	# 打印换行
	if i % 10 == 9:
		print()
	i += 1
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值