Python 基础之循环结构 while
一.while循环介绍
while 循环 可以提高代码的效率,减少代码的冗余
while 条件表达式:
code1
code2
如果条件表达式成立,返回Ture,就执行其中的代码块
1.基本语法
例:打印1 ~100
#(1)初始化变量i
i = 1
#(2)写循环判断条件
while i<= 100:
print(i)
#(3)自增自减的条件
i+=1
#代码解析
首先初始化i=1
然后判断1<=100 满足返回Ture 执行代码块
然后print(1)
i+=1 i = i + 1 i =>2
回到条件表达式当中进行判断 也就是回答20行
2<=100 满足 返回Ture 执行代码块
i+=1 i= i+1 2+i =>3
回到条件表达式当中进行判断 ,也就是回到20行
3<=100 满足 返回Ture 执行代码块
然后print(3)
i+=1 i = i + 1 3+1 =>4
什么时候条件跳出?
当i=101的时候
101<=100 不满足 返回False 不执行代码块
循环终止。。。
2.while的写法
例:
#(1)第一种方法
#1~100的累加和
i = 1
total = 0
while i <= 100:
#写上逻辑
#print(i)
total += 1
i += 1
print(total)
代码解析:
total += i => total = total + i => 0 + 1 => 1
i+=1 => i = i+1 => 1+1 => 2
2 <= 100 满 足 返回真True
total += i => totoal = total + i => 0 + 1 + 2 => 3
i+=1 => i = i+1 => 2+1 => 3
3 <= 100 满足 返回真True
total += i => totoal = total + i => 0 + 1 + 2 + 3 => 6
i+=1 => i = i+1 => 3+1 => 4
4 <= 100 满足 返回真True
total += i => totoal = total + i => 0 + 1 + 2 + 3 + 4 + 5 + ...+ 100 => 5050
dai
当i = 101 的时候
101 <= 100 不满足 循环终止...
# (2)死循环写法
#whilie Ture:
#print(1)
i = 1
flag = True
total = 0
while flag:
total += i
i +=1
# 添加一个能够跳出来的条件
if i == 101:
flag = False
print(total)
#打印一行10个小星星
#help 可以查看帮助文档
help(print)
i = 1
while i <=100:
#end = '' 默认不换行
print("*",end="")
i+=1
#用一个变量输出10个小星星(配置while)
i = 0
while i < 10:
print("★",end="")
i+=1
二.关于while循环的练习题
1.用一个变量打印出一个十个小星星
(十个小星星塞在一个变量中,最后达成变量)
例:
#法一:
a = 10
res = "★" * a
print(res)
print("===============")
#法二:
i = 0
strvar = ''
while i<10:
strvar += "★"
i+=1
print(strvar)
print("===============")
#法三:
i = 0
while i < 10:
print("★",end="")
i+=1
print("\n",end="===============\n")
#法四:
print("★★★★★★★★★★")
2.十行十个小星星
例:
#法一:
i = 0
while i < 100:
#打印星星
print("☆",end="")
#打印换行
if i%10 == 9:
print()
i+=1
#法二:
print("===============")
i = 0
while i <= 10:
j = 0
while j <= 10:
print("☆",end="")
j += 1
print("\n",end="")
i += 1
#法三:
#输入数量几就输出几个几行小星星,且奇数为★,偶数为☆
i = 0
n = float(input("请输入星星个数:"))
while i < n :
if n % 2 == 0:
j = 1
while j <= n:
print("☆", end="")
j += 1
print("\n", end="")
i+=1
else:
j = 1
while j <= n:
print("★", end="")
j += 1
print("\n", end="")
i += 1
#法四:
j = 0
n = int(input("请输入星星个数:"))
for j in range(0,n):
i = 0
strvar = ''
while i<n:
if n % 2 == 0:
strvar += "★"
else:
strvar += "☆"
i+=1
print(strvar)
j+=1
3.十行十列隔列变色小星星
例:
#法一
i = 1
while i <= 100:
#控制打印 隔列打印
if i % 2==0:
print("★", end="")
else:
print("☆",end="")
#控制换行
if i % 10 == 0:
print()
i +=1
print("==================")
#法二:
i = 0
strvar = ''
j = 0
while j < 10:
while i < 10:
if i%2 == 0:
strvar +="★"
else:
strvar += "☆"
i+=1
print(strvar)
j += 1
print("==================")
#法三:
j = 0
#对行的星星进行排序
for j in range(0,10):
i = 0
strvar = ''
#对列的星星进行排列
while i < 10:
if i%2 == 0:
strvar +="★"
else:
strvar += "☆"
i+=1
print(strvar)
j+=1
#法四
count = 1
while count <= 100:
if count & 1:
print("★", end="")
else:
print("☆",end="")
if count % 10 == 0:
print("\n",end="")
count +=1
print("=======最后一种========")
i = 0
while i < 10:
j = 0
while j < 10:
#控制打印星星的代码
if j % 2 == 0:
print("★",end="")
else:
print("☆",end="")
j+=1
print()
i += 1
4.十行十列隔行变色小星星
例:
#法一
i = 0
while i < 10:
j = 0
if i%2 == 0:
while j <= 10:
print("★",end="")
j += 1
print("\n",end="")
else:
while j <= 10:
print("☆",end="")
j += 1
print("\n",end="")
i += 1
print("=========================")
解析:
n // 2
0 // 2 0
1 // 2 0
2 // 2 1
3 // 2 1
0 // 4 0
1 // 4 0
2 // 4 0
3 // 4 0
4 // 4 1
..
..
4个1 4个2 4个3
任意数和n进行地板除 产生n个相同的数
任意数 // 10 产生十个相同的数
任意数 // 25 产生25个相同的数
#法二
i = 0
while i< 100:
#打印星星的部分
if i // 10 %2 == 0:
print("★",end="")
else:
print("☆",end="")
#执行部分
if i % 10 == 9:
print()
i+=1
解析:
i = 0 1 2 3 4 5 6 7 8 9
i // 10 0
i = 10 11 12 13 14 15 16 17 18 19
i //10 1
...........
i // 10 2
i // 10 得到最后的数范围是0~9
0~9 % 2 0 或者1 正好做黑白星
5.输入几行几列就输出几行几列隔列变色小星星
例:
j = 0
m = int(input("请输入小星星的行数:"))
n = int(input("请输入小星星的列数:"))
#对行的星星进行排序
for j in range(0,m):
i = 0
strvar = ''
#对列的星星进行排列
while i < n:
if i%2 == 0:
strvar +="★"
else:
strvar += "☆"
i+=1
print(strvar)
j+=1
Python 基础之循环结构 while的更多相关文章
- 第五篇:python基础之循环结构以及列表
python基础之循环结构以及列表 python基础之编译器选择,循环结构,列表 本节内容 python IDE的选择 字符串的格式化输出 数据类型 循环结构 列表 简单购物车的编写 1.pyth ...
- python基础之循环结构以及列表
python基础之编译器选择,循环结构,列表 本节内容 python IDE的选择 字符串的格式化输出 数据类型 循环结构 列表 简单购物车的编写 1.python IDE的选择 IDE的全称叫做集成 ...
- Python 基础之循环结构for及break pass continue
一.for 循环 #循环 变量 迭代 都是一个意思#把列表里面的元素意义的拿出来就是遍历listvar = ["one","two","three&q ...
- python分支和循环结构
本文收录在Python从入门到精通系列文章系列 1. 分支结构 1.1 应用场景 迄今为止,我们写的Python代码都是一条一条语句顺序执行,这种代码结构通常称之为顺序结构.然而仅有顺序结构并不能解决 ...
- Python 基础 while 循环
Python 基础 while 循环 while 循环 在生活中,我们遇到过循环的事情吧?比如循环听歌.在程序中,也是存才的,这就是流程控制语句 while 基本循环 while 条件: # 循环体 ...
- 基础语法-循环结构for
基础语法-循环结构for 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.for循环格式 for(初始化表达式;循环条件表达式;循环后的操作表达式){ 执行语句(循环体); } ...
- 基础语法-循环结构do...while
基础语法-循环结构do...while 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.do...while语句格式 do{ 执行语句; }while(条件表达式); 温馨提示: ...
- 基础语法-循环结构while
基础语法-循环结构while 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.while语句格式 while(条件表达式){ 执行语句; } 二.while语句案例 /** * ...
- Python编程基础:循环结构
一.为什么要用循环 现在有一个任务,要求你输出一百遍"好好学习,天天向上!",想一想,你会怎么做? (一)老老实实的笨方法 print("第1遍写:好好学习,天天向上!& ...
随机推荐
- 通过ping和tracert命令来判断网络经过多少个路由。trace和route合作
摘抄自: https://blog.csdn.net/foreverhuylee/article/details/49853075 当我们访问某个网络时,通过tracert命令,就能知道本机与目标主机 ...
- 【代码学习】PYTHON 线程
一.使用threading模块多线程执行 可以明显看出使用了多线程并发的操作,花费时间要短很多 创建好的线程,需要调用start()方法来启动 #coding=utf-8 import threadi ...
- Qt QML Component 学习笔记
简介 Component是Qt封装好的.只暴露必要接口的QML类型,可以重复利用.一个QML组件就像一个黑盒子,它通过属性.信号.函数和外部世界交互. 一个Component既可以定义在独立的QML文 ...
- vue中,实现锚点定位及跳转(url不发生变化)
<div class="footer" @click="returnTop"> methods:{ returnTop:function(){ do ...
- Linux - 终端terminal进入交互环境的快捷键
1. 上一页 ctrl + b 2. 下一页 空格 / ctrl + f 3. 上半页 ctrl + u 4. 下半页 ctrl + d 5. 上一行 k 6. 下一行 j 7. 向上查找 ?key ...
- python opencv:使用滑动条做调色板
cv2.getTrackbarPos() 函数的 一个参数是滑动条的名字, 第二个参数是滑动条被放置窗口的名字, 第三个参数是滑动条的默认位置. 第四个参数是滑动条的最大值, 第五个函数是回调函数,每 ...
- 创业学习---《预判项目的长期壁垒》--B-3.预判模块---HHR计划---以太一堂
一,<开始学习> 1,投资人经常会问CEO:你的项目的长期壁垒是什么?你是怎么思考的? 2,三个预热思考题: (1)突然有一天,大公司要抄你,你会怎么办? 答:用增长技术来和他竞争. ( ...
- HYSBZ-2038小Z的袜子
作为一个生活散漫的人,小Z每天早上都要耗费很久从一堆五颜六色的袜子中找出一双来穿.终于有一天,小Z再也无法忍受这恼人的找袜子过程,于是他决定听天由命-- 具体来说,小Z把这N只袜子从1到N编号,然后从 ...
- SprintBoot学习(三)
Thymeleaf模板引擎 1.thymeleaf是一个Java类库,,他是xml/xhtml/html5的模板引擎可以作为view层 2.themeleaf基本语法 引入thymeleaf < ...
- JS打开浏览器新窗口
window.open(URL,name,features,replace); 参数 描述 URL 一个可选的字符串,声明了要在新窗口中显示的文档的 URL.如果省略了这个参数,或者它的值是空字符串, ...