流程控制之while循环

循环:当你需要重复一件事,就叫循环

while循环允许以布尔条件的重复测试为基础的一般重复

语法

while True:
print('hello world')
'''
while(当) <条件>:
<需要进行重复的代码块> # 当条件成立时会进行运行,结束完代码块后会再一次判断条件,成立再运行,运行完再判断条件,%
'''

while+break

while True:
print('hello world')
break
'''
while(当) <条件>:
<需要进行重复的代码块> # 当条件成立时会进行运行,结束完代码块后会再一次判断条件,成立再运行,运行完再判断条件,%break # 遇到break后终止while循环
'''

hello world

while+continue

count=0
while count<10:
count += 1
if count==6:
continue #跳出本次循环
print(count,end=' ') #end=''为不换行

1 2 3 4 5 7 8 9 10

while+else

count=0
while count<10:
print(count)
count+=1
else:
print('结束循环')

0 1 2 3 4 5 6 7 8 9 结束循环

while循环的嵌套

age=25
count=0
while count<3: #外层循环,控制是否还想继续
while count< 3: #内层循环,控制游戏次数
guess = input("猜测:")
if int(guess) > age:
print("猜大了")
elif int(guess) < age:
print("猜小了")
else:
print("\033[41m恭喜你猜对了\033[0m".center(30))
count=9 #控制跳出程序
break
count += 1
if count==3: #判断是否需要执行下面的代码
rode = input('还想继续吗')
if rode=='y' or rode=='Y':
count=0
print('请继续:')
elif rode=='n' or rode=='N':
print('拜拜')
break

流程控制之for循环

for循环对定义序列(如字符串中的字符、列表中的元素或一定范围内的数字)的值提供了适当的迭代

语法

 for i in range(11):
print(i,end=' ')
'''
for <变量> in <循环序列>:
【循环体】
'''

0 1 2 3 4 5 6 7 8 9 10

for+break

for i in range(0,12):
print(i,end=' ')
if i==10:
print('bai')
break
#碰到break后终止for循环

0 1 2 3 4 5 6 7 8 9 10 bai

for+continue

for i in range(0,14):
if i==12:
continue
print(i, end=' ')
#碰到continue则终止本次循环

0 1 2 3 4 5 6 7 8 9 10 11 13

for+else

for i in range(0,16,4):
print(i,end=' ')
else:
print('结束循环')

0 4 8 12 结束循环

for循环的嵌套

for i in range(1, 10):  #循环列
for j in range(1, i+1): #循环行
print(f'{j}*{i}={i*j}\t', end='')
print()
'''
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
'''

while循环与for循环的区别

while:

​ 1.会进入死循环(不可控)

​ 2.世间万物都可以作为循环的对象

for:

​ 1.不会进入死循环(可控)

​ 2.只对容器类数据类型+字符串循环

python之浅谈循环的更多相关文章

  1. Python 基于python+mysql浅谈redis缓存设计与数据库关联数据处理

    基于python+mysql浅谈redis缓存设计与数据库关联数据处理 by:授客  QQ:1033553122 测试环境 redis-3.0.7 CentOS 6.5-x86_64 python 3 ...

  2. Spring5.0源码学习系列之浅谈循环依赖问题

    前言介绍 附录:Spring源码学习专栏 在上一章的学习中,我们对Bean的创建有了一个粗略的了解,接着本文浅谈Spring循环依赖问题,这是一个面试比较常见的问题 1.什么是循环依赖? 所谓的循环依 ...

  3. python itertool 浅谈迭代工具

    1.概述 Python的内建模块itertools提供了非常有用的用于操作迭代对象的函数. 首先,我们看看itertools提供的几个“无限”迭代器: import itertools natuals ...

  4. Python之浅谈多态和封装

    目录 组合 什么是组合 为什么使用组合 多态和多态性 多态 什么是多态? 多态性 好处 多态性 什么是多态性 封装 封装是什么意思? 隐藏 如何用代码实现隐藏 python 实际上是可以访问隐藏属性的 ...

  5. Python之浅谈模块

    目录 模块的四种形式 什么是模块 import和from......import 循环导入 模块的搜索路径 Python文件的两种用途 random模块 模块的四种形式 什么是模块 ​ 模块就是一个p ...

  6. 【python】浅谈包

    python中的包可以理解为模块的集合.每个包也既可以为单包也可以有多个小包组成. Python中的package定义很简单,其层次结构与目录的层次结构相同,但是每个package必须包含一个__in ...

  7. 【python】浅谈for...else...语句

    for循环可以和 else 子句同时使用(for...else).当迭代完for循环完整个列表失败后,会执行else语句.但循环中被 break 终止的情况下不会执行.如下例子所示: for i in ...

  8. 【python】浅谈encode和decode

    对于encode和decode,笔者也是根据自己的理解,有不对的地方还请多多指点. 编码的理解: 1.编码:utf-8,utf-16,gbk,gb2312,gb18030等,编码为了便于理解,可以把它 ...

  9. Python实例浅谈之三Python与C/C++相互调用

    一.问题 Python模块和C/C++的动态库间相互调用在实际的应用中会有所涉及,在此作一总结. 二.Python调用C/C++ 1.Python调用C动态链接库 Python调用C库比较简单,不经过 ...

随机推荐

  1. Java实现 LeetCode 587 安装栅栏(图算法转换成数学问题)

    587. 安装栅栏 在一个二维的花园中,有一些用 (x, y) 坐标表示的树.由于安装费用十分昂贵,你的任务是先用最短的绳子围起所有的树.只有当所有的树都被绳子包围时,花园才能围好栅栏.你需要找到正好 ...

  2. Java实现 LeetCode 303 区域和检索 - 数组不可变

    303. 区域和检索 - 数组不可变 给定一个整数数组 nums,求出数组从索引 i 到 j (i ≤ j) 范围内元素的总和,包含 i, j 两点. 示例: 给定 nums = [-2, 0, 3, ...

  3. java实现 蓝桥杯 算法提高 盾神与条状项链

    问题描述 有一天,盾神捡到了好多好多五颜六色的珠子!他心想这些珠子这么漂亮,可以做成一条项链然后送给他心仪的女生~于是他用其中一些珠子做成了长度为n的项链.当他准备把项链首尾相接的时候,土方进来了. ...

  4. tensorflow2.0学习笔记第二章第一节

    2.1预备知识 # 条件判断tf.where(条件语句,真返回A,假返回B) import tensorflow as tf a = tf.constant([1,2,3,1,1]) b = tf.c ...

  5. 【网页设计】第四周 JavaSript

    第四周  JSP 一  JSP概述 含义: Java Server Pages, 广泛使用的服务器端脚本语言之一:(运行在服务器端  BS结构) 由服务器端的JSP引擎执行JSP代码,然后将结果以HT ...

  6. 国外程序员整理的Java资源大全(全部是干货)

    原文 译者 唐尤华 翻译自 github akullpp 这里搜集了用来构建应用程序的工具. Apache Maven:Maven使用声明进行构建并进行依赖管理,偏向于使用约定而不是配置进行构建.Ma ...

  7. 有关指针 -> 和* 的重载

    1, #include<iostream> #include<string> using namespace std; class test{ int i; public: t ...

  8. 如何修改centOS7的GUI图形界面

    在安装Gnome包之前,需要检查一下安装源(yum)是否正常,因为需要在yum命令来安装gnome包. 第一步:先检查yum 是否安装了,以及网络是否有网络.如果这两者都没有,先解决网络,在解决yum ...

  9. [转]记一次linux(被)入侵,服务器变矿机~

    0x00 背景 周一早上刚到办公室,就听到同事说有一台服务器登陆不上了,我也没放在心上,继续边吃早点,边看币价是不是又跌了.不一会运维的同事也到了,气喘吁吁的说:我们有台服务器被阿里云冻结了,理由:对 ...

  10. Spring:扫描组件

    <context:component-scan>:扫描组件,对设置的包下面的类进行扫描,会讲加上注解的类作为Spring的组件进行加载 组件:指Spring中管理的bean ​ 作为Spr ...