1.1双向循环控制流程

i  = 0
while i > 10:
#外层循环
j = 10
while j < 0:
#内层循环
j -= 1
i += 1

  

1.1.1 双向循环练习------- >打印小心心

# 十行十列隔列换色 实例 :"★","☆"
n = 0
while n < 10 :
x = 0
while x < 10 :
if x % 2 == 1 :
print("★",end="")
else:
print("☆",end="")
x += 1
print()
n += 1

# 十行十列隔行换色
n = 0
while n < 10 :
x = 0
while x < 10 :
if n % 2 == 1 :
print("★",end="")
else:
print("☆",end="")
x += 1
print()
n += 1

  

1.1.2 双向循环练习------- >九九乘法表

#正
stavar = 1 # 循环开始第一个数为 1
while stavar <= 9: # 第一个数范围是 1~9
endvar = 1 # 第二个数每一行开始为1
while endvar <= stavar: # 当第二个数小于等于第一个数的时候打印
print(stavar, '*', endvar, '=', stavar * endvar, end="\t")
endvar += 1 # 第二个数自加 1
print() # 循环完内层后
stavar += 1
#倒
stavar = 9
while stavar >= 1:
endvar = 1
while endvar <= stavar:
print(stavar, '*', endvar, '=', stavar * endvar, end="\t")
endvar += 1
print()
stavar -= 1

  

1.2.3 升级版九九乘法表

# 倒正
endvar = 9
while endvar >= 1:
stavar = endvar
while stavar >= 1:
print("%d%s%d%s%2d"%(stavar,"*",endvar,"=",stavar*endvar),end="\t")
# print(stavar, '*', endvar, '=', stavar * endvar, end="\t")
stavar -= 1
print("\t")
endvar -= 1
# 倒反
stavar = 9
while stavar >= 1:
endvar = stavar
print(" " * (9-stavar),end="")
while endvar >= 1:
print("%d%s%d%s%2d"%(stavar,'*',endvar,'=',stavar * endvar,),end=" ")
# print(stavar, '*', endvar, '=', stavar * endvar, end="\t")
endvar -= 1
print()
stavar -= 1
1.2.4 吉利数字
i = 100

while i < 1000:
gewei = i % 10
shiwei = i // 10 % 10
baiwei = i // 100

if gewei == shiwei == baiwei: # 如果个十百位都相等
print(i)
elif gewei + 1 == shiwei == baiwei - 1: # 例如 543
print(i)
elif gewei - 1 == shiwei == baiwei + 1: # 例如 345
print(i)

i += 1

  

1.2.5 百元买百鸡

"""
公鸡x 母鸡y 小鸡z
公鸡1块钱1只,母鸡3块钱一只,小鸡5毛钱一只
问: 用100块钱买100只鸡,有多少种买法? # 21种
"""
# 示例一
i = 0 # i 表示公鸡的个数
count = 0 # 计数
while i <= 100:
j = 0 # j 表示母鸡个数
while j <= 33:
z = 0 # z 表示小鸡个数
while z <= 100:
if i + 3*j + z/2 == 100 and i + j + z == 100:
print('母鸡%s只,公鸡%s只,小鸡%s只' % (i, j, z))
count += 1
z += 1
j += 1
i += 1

print('一共%s种方案' % count)


# 示例二
i = 0 # i 表示公鸡的个数
count = 0 # 计数
while i <= 100:
j = 0 # j 表示母鸡个数
while j <= 33 and j <= 100-i: # 已经买了i只公鸡,母鸡最多100-i只
if i + 3*j + (100-i-j)/2 == 100:
print('母鸡%s只,公鸡%s只,小鸡%s只' % (i, j, (100-i-j)))
count += 1
j += 1
i += 1

print('一共%s种方案' % count)

1.2 pass , break ,continue

1.2.1 pass

# 不执行任何操作
# 保持程序结构的完整行

while Ture:
# unexpected EOF while parsing -----> 解析意外,找不到接收符,此时可以使用 pass

  

1.2.2 break

# 终止当前循环
# 示例一
flag = True
while flag :
n = 0
while n < 10 :
if n == 5 :
break # 终止 n < 10 这个循环 继续执行外层循环,此时 n = 5 ,死循环
n +=1
# 示例二
flag = True
while flag :
n = 0
while n < 10 :
if n == 5 :
break # 终止 n < 10 这个循环 继续执行外层循环,此时 n = 5 ,死循环
break # 终止外层循环
n +=1

  

1.2.3 continue

# 跳过本次循环,从下一次循环开始,continue后面代码不执行,
# 示例一
num = 1
while num < 10 :
if num == 5 :
continue # 跳过 5 然后继续输出
print(num)
num += 1 # 由于 continue 后面代码不执行,所以num 一直等于 5,只能输出 1 ~ 4 ,死循环 # 实例二
num = 1
while num < 10 :
if num == 5 :
num += 1 # 由于 continue 后面代码不执行,所以将 num 放到这里继续累加
continue # 跳过 5 然后继续输出
print(num)
num += 1 # 当 num = 5 ,此时此处的 num 不再累加

  

1.3 for

# 公式 ------>  for i in ("容器数据类型","range","迭代器")
# 1、容器数据类型 (str,list,tuple,set,dicr)
dict = {"name":"bajie","age":18,}
for i in dicr :
print(i) # 只打印字典的key # 2、range(开始值,终止值,步长) ------> Python区间取值,取不到终止值
for i in range(1,10,3)
"""
1 一
1 + 3 = 4 二
4 + 3 = 7 三
7 + 3 = 10 取不到
"""
print(i)
for i in range(10,1,-4):
"""
10 一
10 - 4 = 6 二
6 - 4 = 2 三
2 - 4 取不到
"""
print(i)

  

day6 python while,for 循环控制的更多相关文章

  1. Python之路,Day6 - Python基础6

    本节大纲: 模块介绍 time &datetime模块 random os sys shutil json & picle shelve xml处理 yaml处理 configpars ...

  2. Day6 - Python基础6 面向对象编程

    Python之路,Day6 - 面向对象学习   本节内容:   面向对象编程介绍 为什么要用面向对象进行开发? 面向对象的特性:封装.继承.多态 类.方法.     引子 你现在是一家游戏公司的开发 ...

  3. Day6 Python常用的模块

    一.logging模块 一.日志级别 critical=50 error=40 waring=30 info=20 debug=10 notset=0 二.默认的日志级别是waring(30),默认的 ...

  4. python笔记之循环控制

    学习python的第一个例子,while循环中嵌套if-else语句,一个猜年龄的例子 #案例1,实现循环猜年龄 # my_age = 12 # while True: # guess_age1 = ...

  5. 第六周 day6 python学习笔记

    1.Python面向对象编程OOP(Object Oriented Programming) 封装:可以隐藏实现细节,使代码模块化 继承:可以扩展已存在的代码模块,可以使代码实现重用 多态:一种接口, ...

  6. Day6 - Python基础6 模块shelve、xml、re、subprocess、pymysql

    本节目录: 1.shelve模块 2.xml模块 3.re模块 4.subprocess模块 5.logging模块 6.pymysql 1.shelve 模块 shelve模块是一个简单的k,v将内 ...

  7. Python for else 循环控制

    for语句可用来遍历某一对象,还具有一个可选的else块.如果for循环未被break终止,则执行else块中的语句.break 在需要时终止for循环continue 跳过位于其后的语句,开始下一轮 ...

  8. python,for,while循环控制

    1.for循环 for循环 for i in range(0,5): for j in range(0,5): print('#'*5) 2.while 循环 import random #get n ...

  9. day6.python字典练习题

    1.有如下变量(tu是个元组),请实现要求的功能 tu = (“alex”, [11, 22, {“k1”: ‘v1’, “k2”: [“age”, “name”], “k3”: (11,22,33) ...

随机推荐

  1. 西门子S7-300 PLC视频教程(百度网盘)收集于网络-供参考学习

    百度网盘地址: 西门子300 PLC视频教程 群文件里面可以找到. 下载: https://blog.csdn.net/txwtech/article/details/93016190

  2. RocketMQ(1)---架构原理及环境搭建

    一.架构简述 RocketMQ阿里开源的一个分布式消息传递和流媒体平台,具有低延迟,高性能和可靠性, 万亿级容量和灵活的可伸缩性.跟其它中间件相比,RocketMQ的特点是纯JAVA实现,在发生宕机和 ...

  3. Mac上使用brew另装ruby和gem的新玩法

    [本文版权归微信公众号"代码艺术"(ID:onblog)所有,若是转载请务必保留本段原创声明,违者必究.若是文章有不足之处,欢迎关注微信公众号私信与我进行交流!] 众所周知,Mac ...

  4. 第一章:开始启程-你的第一行Android代码

    Android 系统为开发者提供了什么? 四大组件 活动(Activity):界面 服务(Service):后台默默运行 广播接收器(Broadcast Receiver):接收.发送广播消息 内容提 ...

  5. weblogic之高级进阶JMS的应用

    不仅Activemq提供的jms服务,Weblogic也提供了jms服务,很多项目是部署在Weblogic中,使用其提供的jms服务也是很多企业的选择,一直没亲手试过,今天试了下,遇到的小问题还挺多, ...

  6. 使用java类的方式配置spring 需要什么注解?

    1.@Configuration 修饰类,声明当前类是一个配置类,相当于applicationContext.xml文件 2.@ComponentScan 用于指定spring在初始化容器时要扫描的包 ...

  7. C#数据结构与算法系列(十九):选择排序算法(SelectSort)

    1.介绍 选择排序算法属于内部排序算法,是从欲排序的数据中,按指定的规则选出某一元素,再依规定交换位置达到排序的目的 时间复杂度:O(n^2) 双层for 2.思想 选择排序(select sorti ...

  8. vue全家桶(2.2)

    3.3.router-link配置 3.3.1.实例 需求:实现下面效果,点击不同的菜单,显示不同的文字 核心代码:App组件 <template> <div id="ap ...

  9. js基础练习题(3)

    8.this 1.举例说说apply方法和call方法的作用和区别 2.读下面代码,写程序结果 function identify () { return this.name.toUpperCase( ...

  10. 不就是语法和长难句吗—笔记总结Day1

    CONTENTS 第一课 简单句 第二课 并列句 第三课 名词(短语)和名词性从句 第四课 定语和定语从句 第五课 状语和状语从句 第六课 英语的特殊结构 第一课 奋斗的开始——简单句 一.什么是英语 ...