本篇内容介绍了“Python全栈的单项循环怎么实现”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
1. 多项_巢状分支
多项分支 (多选一)
"""if 条件表达式1:code1 elif 条件表达式2:code2elif 条件表达式3:code3else:`code4如果条件表达式1成立,执行对应的分支code1,反之判断条件表达式2是否成立如果条件表达式2成立,执行对应的分支code2,反之判断条件表达式3是否成立如果条件表达式3成立,执行对应的分支code3,如果不成立,直接走else分支,到此程序执行完毕elif 可以是0个 或者 多个else 可以是0个 或者 一个"""youqian = Falseyoufang = Falseyouche = Falseif youqian == True:print("说明这个人很有实力")elif youfang == True:print("能交给朋友么")elif youche == True:print("开了雅迪艾玛调动车,我们碰一碰吧")else:print("你还是去做美团骑手吧")print("<=======================>")# ### 巢状分支"""单项分支,双向分支,多项分支的互相嵌套组合"""youqian = Trueyoufang = Trueyouche = Trueyouyanzhi = Trueyoutili = Falseif 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 = 1total = 0# (2) 写上循环的条件while i <= 100 :# (4) 写上自定义的逻辑total += i# (3) 自增自减的值i += 1print(total)"""代码解析:第一次循环i = 1 i <= 100 判定为真True 执行循环体 total += i => total = total + i => 0 + 1i += 1 => i = 2第二次循环i = 2 i <= 100 判定为真True 执行循环体 total += i => total = total + i => 0 + 1 + 2i += 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 = 1total = 0sign = Truewhile sign:total += ii+=1# 判断i是否加到了101 , 不参与循环if i == 101:# 终止循环sign = Falseprint(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 = 0while i<10:# end='' 打印时,尾部默认不加换行print("*",end='')i += 1# 默认换行# print()# (2)通过打印一个变量的形式,展现一行十个小星星print("<======>")i = 0strvar = ""while i < 10:# 写上循环的逻辑strvar += "*" # strvar = strvar + "*"i +=1print(strvar)"""strvar += "*" => strvar = "*"strvar += "*" => strvar = "*" + "*" = "**"strvar += "*" => strvar = "**" + "*" = "***"...strvar += "*" => strvar = "********" + "*" = "*********""""# (3)一行十个换色的星星 ★☆★☆★☆★☆★☆"""# 方法一i = 0while i < 5:print("★☆",end="")i+=1"""# 方法二i = 0while i < 10:if i % 2 == 0 :print("★",end="")else:print("☆",end="")i+=1print("<=============>")# 方法三i = 0strvar = ""while i < 10:if i % 2 == 0 :strvar += "★"else:strvar += "☆"i+=1print(strvar)"""***公式: 任意数 和 n 进行取余,余数的范围: 0 ~ (n-1)***0 % 2 = 01 % 2 = 12 % 2 = 03 % 2 = 1被除数 % 2 => 0 或者 10 % 5 = 0 1 % 5 = 12 % 5 = 23 % 5 = 34 % 5 = 45 % 5 = 0 6 % 5 = 17 % 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 999 % 10 = 919 % 10 = 929 % 10 = 9...99 % 10 = 9"""print("<======>")# 方法二i = 1while 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 = 01 // 10 = 02 // 10 = 0..9 // 10 = 00 ~ 9 // 10 => 0 (10个相同的0)10 // 10 = 111 // 10 = 112 // 10 = 1...19 // 10 = 110 ~ 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 01 // 3 02 // 3 03 // 3 14 // 3 15 // 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 = 10while 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 => 120 ~ 29 => 230 ~ 39 => 390 ~ 99 => 9100 ~ 109 => 0"""
3. 字符串的切片
字符串相关操作
# (1)字符串的拼接 +str1 = "赵沈阳,"str2 = "so strong"res = str1 + str2res = "赵沈阳," + "so strong"print(res)# res = res + ",旁边的同学很喜欢他~"res += ",旁边的同学很喜欢他~"print(res)# (2)字符串的重复 *strvar = "重要的事情说三遍~"res = strvar * 3print(res)# (3)字符串跨行拼接 \str1 = "kskfjskjfklsjfklasdjklfjaskldjfaskljfklasjdfklasjdklfjaskldfjaskldjflasjfsf" \"1122334"print(str1)# (4)字符串的索引# 0 1 2 3 4 5strvar = "赵世超真帅呀"# -6-5-4-3-2-1print(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 = 66str_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 = 1while i <= 100:if i % 2 == 1:print(i)i +=1"""# 3.输出 1-100 内的所有偶数"""i = 1while i <= 100:if i % 2 == 0:print(i)i +=1"""# 4.用户登陆(有三次输错机会)且每次输错误时显示剩余错误次数(提示:使用字符串格式化)"""times = 1while times <= 3:pwd = input("请输入您的密码:")if pwd == "111":print("恭喜你登录成功~")break# 剩余次数 = 总次数 - 已经使用的次数print("你剩余的输入次数是%d" % (3 - times))times +=1""""""sign = Truetimes = 1while sign:pwd = input("请输入您的密码:")if pwd == "111":print("恭喜你登录成功~")sign = Falseelse:# 剩余次数 = 总次数 - 已经使用的次数print("你剩余的输入次数是%d" % (3 - times))# 如果次数已经是3次了,强制终止循环;if times == 3:print("你已经没有机会了... ")sign = Falsetimes +=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 = 0while j < 8:# □■□■□■□■if j % 2 == 0:print("□■□■□■□■",end="")# ■□■□■□■□else:print("■□■□■□■□",end="")print()j +=1"""# □■□■□■□■i = 0while i < 8:if i % 2 == 0:print("□",end="")else:print("■",end="")i +=1 # ■□■□■□■□i = 0while i < 8:if i % 2 == 0:print("■",end="")else:print("□",end="")i +=1 """print("<=====>")j = 0while j < 8:# □■□■□■□■if j % 2 == 0:i = 0while i < 8:if i % 2 == 0:print("□",end="")else:print("■",end="")i +=1 # ■□■□■□■□else:i = 0while i < 8:if i % 2 == 0:print("■",end="")else:print("□",end="")i +=1 print()j +=1# 方法二"""□■□■□■□■■□■□■□■□□■□■□■□■■□■□■□■□□■□■□■□■■□■□■□■□□■□■□■□■■□■□■□■□"""print("<=====>")i = 0while 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 +=1print("<=====>")# 方法三i = 0while i < 4:strvar = ""j = 0# 打印黑白相间的小方块while j < 8:if j % 2 == 0:strvar += "□"else:strvar += "■"j +=1# 正向打印print(strvar)# 逆向打印print(strvar[::-1])i +=1
总结
本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注编程网的更多内容!
1. 多项_巢状分支
多项分支 (多选一)
"""if 条件表达式1:code1 elif 条件表达式2:code2elif 条件表达式3:code3else:`code4如果条件表达式1成立,执行对应的分支code1,反之判断条件表达式2是否成立如果条件表达式2成立,执行对应的分支code2,反之判断条件表达式3是否成立如果条件表达式3成立,执行对应的分支code3,如果不成立,直接走else分支,到此程序执行完毕elif 可以是0个 或者 多个else 可以是0个 或者 一个"""youqian = Falseyoufang = Falseyouche = Falseif youqian == True:print("说明这个人很有实力")elif youfang == True:print("能交给朋友么")elif youche == True:print("开了雅迪艾玛调动车,我们碰一碰吧")else:print("你还是去做美团骑手吧")print("<=======================>")# ### 巢状分支"""单项分支,双向分支,多项分支的互相嵌套组合"""youqian = Trueyoufang = Trueyouche = Trueyouyanzhi = Trueyoutili = Falseif 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 = 1total = 0# (2) 写上循环的条件while i <= 100 :# (4) 写上自定义的逻辑total += i# (3) 自增自减的值i += 1print(total)"""代码解析:第一次循环i = 1 i <= 100 判定为真True 执行循环体 total += i => total = total + i => 0 + 1i += 1 => i = 2第二次循环i = 2 i <= 100 判定为真True 执行循环体 total += i => total = total + i => 0 + 1 + 2i += 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 = 1total = 0sign = Truewhile sign:total += ii+=1# 判断i是否加到了101 , 不参与循环if i == 101:# 终止循环sign = Falseprint(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 = 0while i<10:# end='' 打印时,尾部默认不加换行print("*",end='')i += 1# 默认换行# print()# (2)通过打印一个变量的形式,展现一行十个小星星print("<======>")i = 0strvar = ""while i < 10:# 写上循环的逻辑strvar += "*" # strvar = strvar + "*"i +=1print(strvar)"""strvar += "*" => strvar = "*"strvar += "*" => strvar = "*" + "*" = "**"strvar += "*" => strvar = "**" + "*" = "***"...strvar += "*" => strvar = "********" + "*" = "*********""""# (3)一行十个换色的星星 ★☆★☆★☆★☆★☆"""# 方法一i = 0while i < 5:print("★☆",end="")i+=1"""# 方法二i = 0while i < 10:if i % 2 == 0 :print("★",end="")else:print("☆",end="")i+=1print("<=============>")# 方法三i = 0strvar = ""while i < 10:if i % 2 == 0 :strvar += "★"else:strvar += "☆"i+=1print(strvar)"""***公式: 任意数 和 n 进行取余,余数的范围: 0 ~ (n-1)***0 % 2 = 01 % 2 = 12 % 2 = 03 % 2 = 1被除数 % 2 => 0 或者 10 % 5 = 0 1 % 5 = 12 % 5 = 23 % 5 = 34 % 5 = 45 % 5 = 0 6 % 5 = 17 % 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 999 % 10 = 919 % 10 = 929 % 10 = 9...99 % 10 = 9"""print("<======>")# 方法二i = 1while 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 = 01 // 10 = 02 // 10 = 0..9 // 10 = 00 ~ 9 // 10 => 0 (10个相同的0)10 // 10 = 111 // 10 = 112 // 10 = 1...19 // 10 = 110 ~ 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 01 // 3 02 // 3 03 // 3 14 // 3 15 // 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 = 10while 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 => 120 ~ 29 => 230 ~ 39 => 390 ~ 99 => 9100 ~ 109 => 0"""
3. 字符串的切片
字符串相关操作
# (1)字符串的拼接 +str1 = "赵沈阳,"str2 = "so strong"res = str1 + str2res = "赵沈阳," + "so strong"print(res)# res = res + ",旁边的同学很喜欢他~"res += ",旁边的同学很喜欢他~"print(res)# (2)字符串的重复 *strvar = "重要的事情说三遍~"res = strvar * 3print(res)# (3)字符串跨行拼接 \str1 = "kskfjskjfklsjfklasdjklfjaskldjfaskljfklasjdfklasjdklfjaskldfjaskldjflasjfsf" \"1122334"print(str1)# (4)字符串的索引# 0 1 2 3 4 5strvar = "赵世超真帅呀"# -6-5-4-3-2-1print(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 = 66str_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 = 1while i <= 100:if i % 2 == 1:print(i)i +=1"""# 3.输出 1-100 内的所有偶数"""i = 1while i <= 100:if i % 2 == 0:print(i)i +=1"""# 4.用户登陆(有三次输错机会)且每次输错误时显示剩余错误次数(提示:使用字符串格式化)"""times = 1while times <= 3:pwd = input("请输入您的密码:")if pwd == "111":print("恭喜你登录成功~")break# 剩余次数 = 总次数 - 已经使用的次数print("你剩余的输入次数是%d" % (3 - times))times +=1""""""sign = Truetimes = 1while sign:pwd = input("请输入您的密码:")if pwd == "111":print("恭喜你登录成功~")sign = Falseelse:# 剩余次数 = 总次数 - 已经使用的次数print("你剩余的输入次数是%d" % (3 - times))# 如果次数已经是3次了,强制终止循环;if times == 3:print("你已经没有机会了... ")sign = Falsetimes +=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 = 0while j < 8:# □■□■□■□■if j % 2 == 0:print("□■□■□■□■",end="")# ■□■□■□■□else:print("■□■□■□■□",end="")print()j +=1"""# □■□■□■□■i = 0while i < 8:if i % 2 == 0:print("□",end="")else:print("■",end="")i +=1 # ■□■□■□■□i = 0while i < 8:if i % 2 == 0:print("■",end="")else:print("□",end="")i +=1 """print("<=====>")j = 0while j < 8:# □■□■□■□■if j % 2 == 0:i = 0while i < 8:if i % 2 == 0:print("□",end="")else:print("■",end="")i +=1 # ■□■□■□■□else:i = 0while i < 8:if i % 2 == 0:print("■",end="")else:print("□",end="")i +=1 print()j +=1# 方法二"""□■□■□■□■■□■□■□■□□■□■□■□■■□■□■□■□□■□■□■□■■□■□■□■□□■□■□■□■■□■□■□■□"""print("<=====>")i = 0while 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 +=1print("<=====>")# 方法三i = 0while i < 4:strvar = ""j = 0# 打印黑白相间的小方块while j < 8:if j % 2 == 0:strvar += "□"else:strvar += "■"j +=1# 正向打印print(strvar)# 逆向打印print(strvar[::-1])i +=1
“Python全栈的单项循环怎么实现”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!