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) ...
随机推荐
- GitHub如何回滚代码?
1.git log 查看commit hash值 执行git log:查看commit hash值. 2.执行git reset --hard xxxx xxxx表示的是commit hash 值. ...
- 尚硅谷spring 事物管理
接下来我们重点来学习spring中的事务管理 接下来我们通过代码来实现 spring实现事物我们采用aop的方式来实现 获得连接和手动设置事物相当于@before标注的前置通知,conn.commit ...
- 02.Scrapy-Demo
Scrapy入门实战 采集目标:采集西祠网的IP代理 包括 IP PORT 1. 新建项目 scrapy startproject xicidailiSpider # scrapy 新建项目 项目名 ...
- MarkDown编辑器的区别对比
标题: MarkDown编辑器的区别对比 作者: 梦幻之心星 sky-seeker@qq.com 标签: [MarkDown, 编辑器,区别] 目录: [软件] 日期: 2020-6-22 前提说明 ...
- nginx使用热部署添加新模块
简介 当初次编译安装nginx时,http_ssl_module 模块默认是不编译进nginx的二进制文件当中,如果需要添加 ssl 证书.也就是使用 https协议.那么则需要添加 http_ssl ...
- Python进阶之浅谈内置方法
目录 有序or无序和可变or不可变 数字类型内置方法 整形 浮点型 字符串类型内置方法 有序or无序和可变or不可变 有序:有索引 无序:无索引 可变:变量值变,id不变 不可变:变量值变,id也变 ...
- 二.2vueadmin-template反向代理/路由配置,idc增查删
一.反向代理: (1)F:\devops\data\web\vueAdmin-template\config\index.js ---让别人也能访问我的vue前端 host: '0.0.0.0', ( ...
- 初探RabbitMQ消息队列
SpringBoot 是为了简化 Spring 应用的创建.运行.调试.部署等一系列问题而诞生的产物,自动装配的特性让我们可以更好的关注业务本身而不是外部的XML配置,我们只需遵循规范,引入相关的依赖 ...
- 从CAS讲起,真正高性能解决并发编程的原子操作
今天是猿灯塔“365天原创计划”第1天. 一.原子性操作 原子性操作:原子性在一个操作是不可中断的,要么全部执行成功要么全部执行失败,有着“同生共死”的感觉.及时在多个线程一起执行的时候,一个操作一旦 ...
- 每日一题 - 剑指 Offer 48. 最长不含重复字符的子字符串
题目信息 时间: 2019-07-02 题目链接:Leetcode tag: 动态规划 哈希表 难易程度:中等 题目描述: 请从字符串中找出一个最长的不包含重复字符的子字符串,计算该最长子字符串的长度 ...