我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Python全栈之单项循环

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Python全栈之单项循环

1. 多项_巢状分支

多项分支 (多选一)


"""
if 条件表达式1:
	code1 
elif 条件表达式2:
	code2
elif 条件表达式3:
	code3
else:
	`code4
如果条件表达式1成立,执行对应的分支code1,反之判断条件表达式2是否成立
如果条件表达式2成立,执行对应的分支code2,反之判断条件表达式3是否成立
如果条件表达式3成立,执行对应的分支code3,如果不成立,直接走else分支,到此程序执行完毕
elif 可以是0个 或者 多个
else 可以是0个 或者 一个
"""
youqian = False
youfang = False
youche = False
if youqian == True:
	print("说明这个人很有实力")
elif youfang == True:
	print("能交给朋友么")
elif youche == True:
	print("开了雅迪艾玛调动车,我们碰一碰吧")	
else:
	print("你还是去做美团骑手吧")
print("<=======================>")
# ### 巢状分支
"""单项分支,双向分支,多项分支的互相嵌套组合"""
youqian = True
youfang = True
youche = True
youyanzhi = True
youtili = False
if youqian == True:
	if youfang == True:
		if youche == True:
			if youyanzhi == True:
				if youtili == True:
					print("我要嫁给你~")
				else:
					print("你去吃点大腰子再来~")
			else:	
				print("你去一下泰国+韩国,整整容")
else:
	print("你是个好人呐~")
	
print("<=======================>")
#出题 height
#女生找对象
	# 男生在1米~1.5米之间 小强 你在哪里?
	# 男生在1.5~1.7米之间 没有安全感~
	# 男生 1.7~ 1.8米之间 帅哥 留个电话
	# 男生 1.8~2米之间 帅哥 你建议多一个女朋友吗
# python特有(注意:因为input接受的数都是字符串,又因为我们会输入小数,所以这里只能用float)
"""
height = float(input("请输入您的身高:"))
if 1 <= height < 1.5:
	print("小强 你在哪里?")
elif 1.5 <= height < 1.7:
	print("没有安全感~")
elif 1.7 <= height < 1.8:
	print("帅哥 留个电话")
elif 1.8 <= height < 2:
	print("你建议多一个女朋友吗")
else:
	print("抱歉,没有合适的选项")
"""
# 通用写法
height = float(input("请输入您的身高:"))
if 1 <= height and height < 1.5:
	print("小强 你在哪里?")
elif 1.5 <= height and height < 1.7:
	print("没有安全感~")
elif 1.7 <= height and height < 1.8:
	print("帅哥 留个电话")
elif 1.8 <= height and height < 2:
	print("你建议多一个女朋友吗")
else:
	print("抱歉,没有合适的选项")
"""
tab 向右缩进
shift + tab 向左缩进
"""

2. 循环结构

2.1 循环结构


"""特点:减少冗余代码,提升执行效率"""
"""
语法:
while 条件表达式:
	code1
(1) 初始化一个变量
(2) 写上循环的条件
(3) 自增自减的值
"""
# ### 打印1 ~ 100
# (1) 初始化一个变量
i = 1
# (2) 写上循环的条件
while i <= 100:
	# (4) 写上循环的逻辑
	print(i)
	# (3) 自增自减的值
	i += 1 # i = i + 1
"""
代码解析:
第一次循环
i = 1  i<=100 判断为真,执行循环体 print(1)
i += 1 i => 2 
第二次循环
代码回到17行,重新进行条件判定 
i = 2  i<=100 判断为真,执行循环体 print(2)
i += 1 i => 3
第三次循环
代码回到17行,重新进行条件判定 
i = 3  i<=100 判断为真,执行循环体 print(3)
i += 1 i => 4
....
以此类推 
直到i = 101  i <= 100 判断为假,不执行循环体,到此循环结束...
1 ~ 100
"""
# ### 1 ~ 100的累加和
# (1) 初始化一个变量
i = 1
total = 0
# (2) 写上循环的条件
while i <= 100 :
	# (4) 写上自定义的逻辑
	total += i
	# (3) 自增自减的值
	i += 1
print(total)
"""
代码解析:
第一次循环
i = 1 i <= 100 判定为真True 执行循环体 total += i => total = total + i => 0 + 1
i += 1  => i = 2
第二次循环
i = 2 i <= 100 判定为真True 执行循环体 total += i => total = total + i => 0 + 1 + 2
i += 1  => i = 3
第三次循环
i = 3 i <= 100 判定为真True 执行循环体 total += i => total = total + i => 0 + 1 + 2 + 3 
i += 1  => i = 4
...
依次类推
当i = 101 101 <= 100 判定为假False 不执行循环体,到此,循环结束..
total += i => total + i => 0 + 1 + 2 + 3 + 4 + .... + 100 => 5050
"""

# 死循环
"""
while True:
	print(1)
"""

# ### 用死循环的方法实现 1 ~ 100累加和
i = 1
total = 0
sign = True
while sign:
	total += i
	i+=1
	# 判断i是否加到了101 , 不参与循环
	if i == 101:
		# 终止循环
		sign = False
print(total) #1 ~ 100 = 5050

2.2 单项循环的练习


# (1)打印 一行十个小星星* help(print)
# help 查看某个方法的文档
help(print)
"""
# print("*",end='')
# print("*",end='')
# print("*",end='')
# print("*",end='')
# print("*",end='')
# print("*",end='')
# print("*",end='')
# print("*",end='')
# print("*",end='')
# print("*",end='')
"""
i = 0
while i<10:	
	# end='' 打印时,尾部默认不加换行
	print("*",end='')	
	i += 1
# 默认换行
# print()
# (2)通过打印一个变量的形式,展现一行十个小星星
print("<======>")
i = 0
strvar = ""
while i < 10:
	# 写上循环的逻辑
	strvar += "*" # strvar = strvar + "*"
	i +=1
print(strvar)
"""
strvar += "*" => strvar = "*"
strvar += "*" => strvar = "*" + "*"  = "**"
strvar += "*" => strvar = "**" + "*" = "***"
...
strvar += "*" => strvar = "********" + "*" = "*********"
"""
# (3)一行十个换色的星星 ★☆★☆★☆★☆★☆
"""
# 方法一
i = 0
while i < 5:
	print("★☆",end="")
	i+=1
"""
# 方法二
i = 0
while i < 10:
	if i % 2 == 0 :
		print("★",end="")
	else:
		print("☆",end="")
	i+=1
print("<=============>")
# 方法三
i = 0
strvar = ""
while i < 10:
	if i % 2 == 0 :
		strvar += "★"
	else:
		strvar += "☆"
	i+=1
print(strvar)
"""
***公式: 任意数 和 n 进行取余,余数的范围: 0 ~ (n-1)***
0 % 2 = 0
1 % 2 = 1
2 % 2 = 0
3 % 2 = 1
被除数 % 2 => 0 或者 1
0 % 5 = 0 
1 % 5 = 1
2 % 5 = 2
3 % 5 = 3
4 % 5 = 4
5 % 5 = 0 
6 % 5 = 1
7 % 5 = 2
被除数 % 5 => 0 或者 1,2,3,4
"""
# (4)用一个循环,打印十行十列小星星
"""
★★★★★★★★★★
★★★★★★★★★★
★★★★★★★★★★
★★★★★★★★★★
★★★★★★★★★★
★★★★★★★★★★
★★★★★★★★★★
★★★★★★★★★★
★★★★★★★★★★
★★★★★★★★★★
"""
# 方法一
i = 0 
while i < 100:
	# 逻辑写在这里
	print("*" , end="")
	# 打印换行 (在9 19 29 .. 99 )
	if i % 10 == 9:
		print()
	i += 1 

"""
0123456789
**********
10111213141516171819
**********
20212223242526272829
**********
...
90919293949596979899
**********
9 19 29 39 49 59 69 79 89 99
9 % 10  = 9
19 % 10 = 9
29 % 10 = 9
...
99 % 10 = 9
"""

print("<======>")
# 方法二
i = 1
while i <= 100:
	# 逻辑写在这里
	print("*" , end="")
	# 打印换行 (在9 19 29 .. 99 )
	if i % 10 == 0:
		print()
	i += 1 
"""
12345678910
**********
11121314151617181920
**********
21222324252627282930
**********
...
919293949596979899100
**********
10 20 30 ... 100
"""
# (5) 一个循环实现十行十列,格列换色的小星星
"""
★☆★☆★☆★☆★☆
★☆★☆★☆★☆★☆
★☆★☆★☆★☆★☆
★☆★☆★☆★☆★☆
★☆★☆★☆★☆★☆
★☆★☆★☆★☆★☆
★☆★☆★☆★☆★☆
★☆★☆★☆★☆★☆
★☆★☆★☆★☆★☆
★☆★☆★☆★☆★☆
"""
i = 0 
while i < 100:
	# (1)打印星星
	if i % 2 == 0 :
		print("★",end="")
	else:
		print("☆",end="")
	# (2)打印换行 (在9 19 29 .. 99 )
	if i % 10 == 9:
		print()
	i += 1 
# (6)一个循环实现十行十列,隔行换色的小星星
"""
★★★★★★★★★★
☆☆☆☆☆☆☆☆☆☆
★★★★★★★★★★
☆☆☆☆☆☆☆☆☆☆
★★★★★★★★★★
☆☆☆☆☆☆☆☆☆☆
★★★★★★★★★★
☆☆☆☆☆☆☆☆☆☆
★★★★★★★★★★
☆☆☆☆☆☆☆☆☆☆
*** 公式:任意数和n进行地板除,会出现n个相同的数
0 // 10 = 0
1 // 10 = 0
2 // 10 = 0
..
9 // 10 = 0
0 ~ 9 // 10 => 0 (10个相同的0)
10 // 10 = 1
11 // 10 = 1
12 // 10 = 1
...
19 // 10 = 1
10 ~ 19 // 10 => 1 (10个相同的1)
.... 以此类推
20 ~ 29 // 10 => 2 (10个相同的2)
30 ~ 39 // 10 => 3 (10个相同的3)
40 ~ 49 // 10 => 4 (10个相同的4)
...
90 ~ 99 // 10 => 9 (10个相同的9)
0~ 100 会出现10个相同的0,1,2 , 3 ... 9 
0 // 3 0
1 // 3 0
2 // 3 0
3 // 3 1
4 // 3 1
5 // 3 1 
"""
""""""
# 方法一
i = 0 
while i < 100:
	# (1)打印星星
	if i // 10 % 2 == 0:
		print("★",end="")
	else:
		print("☆",end="")
	# (2)打印换行 (在9 19 29 .. 99 )
	if i % 10 == 9:
		print()
	i += 1 
# 方法二
print("<=================>")
i = 10
while i < 110:
	# 打印星星 
	num = int(str(i)[-2])
	if num % 2 == 0 :
		print("★",end="")
	else:
		print("☆",end="")
	# 打印换行
	if i % 10 == 9:
		print()
	i+=1
"""
10 ~ 100 101 102 103 110...
10 ~ 19 => 1
20 ~ 29 => 2
30 ~ 39 => 3
90 ~ 99 => 9
100 ~ 109 => 0
"""

3. 字符串的切片

字符串相关操作


# (1)字符串的拼接 +
str1 = "赵沈阳,"
str2 = "so strong"
res = str1 + str2
res = "赵沈阳," + "so strong"
print(res)
# res = res + ",旁边的同学很喜欢他~"
res += ",旁边的同学很喜欢他~"
print(res)
# (2)字符串的重复 *
strvar = "重要的事情说三遍~"
res = strvar * 3
print(res)
# (3)字符串跨行拼接 \
str1 = "kskfjskjfklsjfklasdjklfjaskldjfaskljfklasjdfklasjdklfjaskldfjaskldjflasjfsf" \
"1122334"
print(str1)
# (4)字符串的索引
#          0 1 2 3 4 5
strvar = "赵世超真帅呀"
#         -6-5-4-3-2-1
print(strvar[1])
# (5)字符串的切片: (截取)
"""
语法 => 字符串[::]  完整格式:[开始索引:结束索引:间隔值]
	(1)[开始索引:]  从开始索引截取到字符串的最后
	(2)[:结束索引]  从开头截取到结束索引之前(结束索引-1)
	(3)[开始索引:结束索引]  从开始索引截取到结束索引之前(结束索引-1)
	(4)[开始索引:结束索引:间隔值]  从开始索引截取到结束索引之前按照指定的间隔截取字符
	(5)[:]或[::]  截取所有字符串
"""
strvar = "王文是这个宇宙当中,最完美,无暇,善良,漂亮,英俊,帅气,潇洒,风流倜傥的神秘男孩"
# (1)[开始索引:]  从开始索引截取到字符串的最后
res = strvar[3:]
print(res)
# (2)[:结束索引]  从开头截取到结束索引之前(结束索引-1)
"""4这个最大值本身获取不到,要获取到4之前的那一个数据 : 取头舍尾"""
res = strvar[:5]
print(res)
# (3)[开始索引:结束索引]  从开始索引截取到结束索引之前(结束索引-1)
res = strvar[10:16]
print(res)
# (4)[开始索引:结束索引:间隔值]  从开始索引截取到结束索引之前按照指定的间隔截取字符
# 从左向右截取
res = strvar[::3]
# 0 3 6 9 12 15 ... 
print(res)
# 从右向左截取
res = strvar[::-1]
# -1 -2 -3 -4 -5 -6 .... 
print(res)
res = strvar[-3:-10:-2]
# -3 -5 -7 -9   秘的倜风
print(res)
print("<====>")
"""从左到右截,间隔值为正值,反过来,间隔值是负值,才能保证截取到数据"""
"""
res = strvar[-3:-10:10] # 错误的逻辑
print(res)
res = strvar[1:10]
print(res)
"""

4. 小练习

问题:


1.猜大小的游戏:
设定一个理想数字比如:66,让用户输入数字,如果比66大,则显示猜测的结果大了;如果比66小,则显示猜测的结果小了;只有等于66,显示猜测结果正确。
2.输出 1-100 内的所有奇数
3.输出 1-100 内的所有偶数
4.用户登陆(有三次输错机会)且每次输错误时显示剩余错误次数(提示:使用字符串格式化)
5.写代码,有如下字符串利用切片实现每一个功能
strvar = "132a4b5c"
1)对字符串进行切片形成新的字符串 "132"
2)对字符串进行切片形成新的字符串 "a4b"
3)对字符串进行切片形成新的字符串 "1245"
4)对字符串进行切片形成新的字符串 "3ab"
5)对字符串进行切片形成新的字符串 "c"
6)对字符串进行切片形成新的字符串 "ba3"
6.国际棋盘效果

答案:


# 1.猜大小的游戏:
# 设定一个理想数字比如:66,让用户输入数字,如果比66大,则显示猜测的结果大了;如果比66小,则显示猜测的结果小了;只有等于66,显示猜测结果正确。
"""
num = 66
str_num = input("请输入理想的数字")
num_new = int(str_num)
if num_new > num:
	print("猜测的结果大了")
elif num_new == num:
	print("显示猜测结果正确")
elif num_new < 66:
	print("则显示猜测的结果小了")
"""

# 2.输出 1-100 内的所有奇数
"""
i = 1
while i <= 100:
	if i % 2 == 1:
		print(i)
	i +=1
"""
# 3.输出 1-100 内的所有偶数
"""
i = 1
while i <= 100:
	if i % 2 == 0:
		print(i)
	i +=1
"""
# 4.用户登陆(有三次输错机会)且每次输错误时显示剩余错误次数(提示:使用字符串格式化)
"""
times = 1
while times <= 3:
	pwd = input("请输入您的密码:")
	if pwd == "111":
		print("恭喜你登录成功~")
		break
	# 剩余次数 = 总次数 - 已经使用的次数
	print("你剩余的输入次数是%d" % (3 - times))	
	times +=1
"""
"""
sign = True
times = 1
while sign:
	pwd = input("请输入您的密码:")
	if pwd == "111":
		print("恭喜你登录成功~")
		sign = False
	else:
		# 剩余次数 = 总次数 - 已经使用的次数
		print("你剩余的输入次数是%d" % (3 - times))
	# 如果次数已经是3次了,强制终止循环;
	if times == 3:
		print("你已经没有机会了... ")
		sign = False	
	times +=1
"""
# 5.写代码,有如下字符串利用切片实现每一个功能
strvar = "132a4b5c"
# 1)对字符串进行切片形成新的字符串 "132"
print(strvar[0:3])
# 2)对字符串进行切片形成新的字符串 "a4b"
print(strvar[3:6])
# 3)对字符串进行切片形成新的字符串 "1245"
print(strvar[::2])
# 4)对字符串进行切片形成新的字符串 "3ab"
print(strvar[1:6:2])
# 5)对字符串进行切片形成新的字符串 "c"
print(strvar[-1:])
# 6)对字符串进行切片形成新的字符串 "ba3"
print(strvar[-3::-2]) # -3 -5 -7 
# 6.国际棋盘效果
# 方法一
j = 0
while j < 8:	
	# □■□■□■□■
	if j % 2 == 0:
		print("□■□■□■□■",end="")			
	# ■□■□■□■□
	else:
		print("■□■□■□■□",end="")
	print()
	j +=1
"""
# □■□■□■□■
i = 0		
while i < 8:
	if i % 2 == 0:
		print("□",end="")
	else:
		print("■",end="")
	i +=1 
# ■□■□■□■□
i = 0		
while i < 8:
	if i % 2 == 0:
		print("■",end="")				
	else:
		print("□",end="")
	i +=1 
"""
print("<=====>")
j = 0
while j < 8:	
	# □■□■□■□■
	if j % 2 == 0:
		i = 0		
		while i < 8:
			if i % 2 == 0:
				print("□",end="")
			else:
				print("■",end="")
			i +=1 		
	# ■□■□■□■□
	else:
		i = 0		
		while i < 8:
			if i % 2 == 0:
				print("■",end="")				
			else:
				print("□",end="")
			i +=1 
	print()
	j +=1

# 方法二
"""
□■□■□■□■
■□■□■□■□
□■□■□■□■
■□■□■□■□
□■□■□■□■
■□■□■□■□
□■□■□■□■
■□■□■□■□
"""
print("<=====>")
i = 0
while i < 64:
	# 判断当前是奇数行还是偶数行
	if i // 8 % 2 == 0:
		# □■□■□■□■
		if i % 2 == 0:
			print("□",end="")
		else:
			print("■",end="")
	else:
		# ■□■□■□■□
		if i % 2 == 0:
			print("■",end="")			
		else:
			print("□",end="")
	# 第八个方块换行
	if i % 8 == 7:
		print()		
	i +=1
print("<=====>")
# 方法三
i = 0
while i < 4:
	strvar = ""
	j = 0
	# 打印黑白相间的小方块
	while j < 8:
		if j % 2 == 0:
			strvar += "□"
		else:
			strvar += "■"
		j +=1
	# 正向打印
	print(strvar)
	# 逆向打印
	print(strvar[::-1])
	i +=1

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注编程网的更多内容!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Python全栈之单项循环

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Python全栈的单项循环怎么实现

本篇内容介绍了“Python全栈的单项循环怎么实现”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1. 多项_巢状分支多项分支 (多选一)""
2023-06-21

Python全栈的for循环怎么使用

这篇文章主要介绍“Python全栈的for循环怎么使用”,在日常操作中,相信很多人在Python全栈的for循环怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python全栈的for循环怎么使用”的疑
2023-06-21

python 全栈之路

目录 Python 全栈之路 一. Python 1. Python基础知识部分 2. Python -函数 3. Python - 模块
2023-01-30

python之if循环

if 条件:   if语句块else:   语句块money = int(input("请输入你兜里的钱:"))if money > 500: print("吃肉") print("喝酒") print("聊天")
2023-01-30

Python全栈之路系列之Python

The Python interpreter has a number of functions and types built into it that are always available. They are listed here
2023-01-31

Python全栈之jQuery笔记

jQuery runnoob网址:http://www.runoob.com/jquery/jquery-tutorial.htmljQuery API手册: http://www.runoob.com/manual/jquery/jQue
2023-01-30

Python全栈开发之---assert

一、python assert的作用:根据Python 官方文档解释(https://docs.python.org/3/reference/simple_stmts.html#assert), "Assert statements are
2023-01-30

Python全栈开发之Git

No.1 Git特点版本控制:可以解决多人同时开发的代码问题,也可以找回历史代码分布式:Git是一个分布式版本控制系统,同一个Git仓库,可以分布到不同的机器上,首先会有一台计算机充当服务器,这台计算机7*24小时服务,其他计算机都是从这台
2023-01-31

python全栈开发之Python基础(

一、 基础知识python的运行方式有两种:第一种通过交互式的运行方式,通过 "开始"—>"所有程序" —> "python3.x" —>"IDLE" 运行。第二种是我们写好的Python文件双击运行。 Python的帮助系统 hel
2023-01-31

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录