day6 python while,for 循环控制
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 循环控制的更多相关文章
- Python之路,Day6 - Python基础6
本节大纲: 模块介绍 time &datetime模块 random os sys shutil json & picle shelve xml处理 yaml处理 configpars ...
- Day6 - Python基础6 面向对象编程
Python之路,Day6 - 面向对象学习 本节内容: 面向对象编程介绍 为什么要用面向对象进行开发? 面向对象的特性:封装.继承.多态 类.方法. 引子 你现在是一家游戏公司的开发 ...
- Day6 Python常用的模块
一.logging模块 一.日志级别 critical=50 error=40 waring=30 info=20 debug=10 notset=0 二.默认的日志级别是waring(30),默认的 ...
- python笔记之循环控制
学习python的第一个例子,while循环中嵌套if-else语句,一个猜年龄的例子 #案例1,实现循环猜年龄 # my_age = 12 # while True: # guess_age1 = ...
- 第六周 day6 python学习笔记
1.Python面向对象编程OOP(Object Oriented Programming) 封装:可以隐藏实现细节,使代码模块化 继承:可以扩展已存在的代码模块,可以使代码实现重用 多态:一种接口, ...
- 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将内 ...
- Python for else 循环控制
for语句可用来遍历某一对象,还具有一个可选的else块.如果for循环未被break终止,则执行else块中的语句.break 在需要时终止for循环continue 跳过位于其后的语句,开始下一轮 ...
- 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 ...
- day6.python字典练习题
1.有如下变量(tu是个元组),请实现要求的功能 tu = (“alex”, [11, 22, {“k1”: ‘v1’, “k2”: [“age”, “name”], “k3”: (11,22,33) ...
随机推荐
- 如何使用 Shell 脚本来查看多个服务器的端口是否打开?
我们在进行服务器配置的时候,经常要查看服务器的某个端口是否已经开放.如果服务器只有一两台的话,那很好办,只需要使用 nc 命令一个个查看即可. 但是,如果你的服务器是个集群,有很多台呢?那如果还一个个 ...
- Springboot基于assembly的服务化打包
(1)首先我们编辑 assembly.xml 配置文件,在前文的基础上新增第三方依赖设置(高亮部分),实现将第三方的 jar 包添加到压缩包里的 lib 目录: <?xml version=&q ...
- JS新界面关闭原界面刷新的多种形式
------------恢复内容开始------------ 1.新界面为当前界面弹出的形式: 第一步:首先原界面的原生JS事件需要放到 (function () { ...... })(); 中 ...
- 汇编字符串末尾以00H或 0AH和00H结尾
例如:db 'hello',0 用 C 语言百定义字符串时,编译软件会自动在字符串的末尾,加上一个零('\0').作为度字符串结束的标记. 用汇编的 DB 伪指令定义字符串,编译软件没有自动加上零的功 ...
- Dubbo面试专题
Dubbo面试专题 1. 什么是dubbo Dubbo是阿里巴巴SOA服务化治理方案的核心框架,是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案. 2. ...
- Win8.1安装配置64位Oracle Database 11g的详细图文步骤记录
在开始Oracle数据安装之前建议:1.关闭本机的病毒防火墙.2.断开互联网. 这样可以避免解压缩丢失文件和安装失败. Step1 Oracle官网下载好Windows系统64位的安装包,下载速度慢的 ...
- Python实用笔记 (11)高级特性——迭代器
这些可以直接作用于for循环的对象统称为可迭代对象:Iterable. 可以使用isinstance()判断一个对象是否是Iterable对象: >>> from collectio ...
- JNI调用Cython生成库‘undefined symbol: PyInit_’问题
最近项目需要提升所有 Python 算法的执行时间,并给 Java 框架调用,根据 Python一键转Jar包,Java调用Python新姿势!的思路可以用 Cython 将 Python 代码转换为 ...
- SQL注入基础原理
Web安全: 三层架构(3-tier architecture) 通常意义上就是将整个业务应用划分为: 界面层(User Interface layer) 业务逻辑层(Business Logic L ...
- Java synthetic
读完这篇文章你将会收获到 synthetic fields synthetic method synthetic class 概述 上一篇 Java 枚举 提及到编译成 class 文件之后.编译器会 ...