一  while 循环

语法:

while 条件:

  结果

  如果条件为真,则直接执行结果,然后再次判断条件,直到条件是假,停止循环

结束循环:

1.改变条件

2.break

二 流程控制 break 和 continue

1.break:立刻跳出循环,打断的意思

2.continue :停止本次循环,继续执行下一次循环

三  逻辑运算

1.and  两端都为真 才是真     和 or  相反

2.or  一端为真 则为真          非0 即它

3. not  非   非真即假,非假即真

运算顺序:

()  > not  >  and > or

1.判断下面逻辑语句的 True  False

print(1 > 1 or 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6)

# 输出是 True
print(not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6 ) # 输出是 False

2.求出下面逻辑语句的值

print(8 or 3 and 4 or 2 and 0 or 9 and 7)

#输出结果是  8

print(0 or 2 and 3 and 4 or 6 and 0 or 3)

#输出结果是  4

3.下列结果是什么

print(6 or 2 > 1)

# 输出结果是 6
print(3 or 2 > 1) # 输出结果是 3
print(0 or 5 < 4) # 输出结果是 False
print(5 < 4 or 3) # 输出结果是 3
print(2 > 1 or 6) # 输出结果是 True
print(3 and 2 > 1) # 输出结果是 True
print(0 and 3 > 1) # 输出结果是 0
print(2 > 1 and 3) # 输出结果是 3
print(3 > 1 and 0) # 输出结果是 0
print(3 > 1 and 2 or 2 < 3 and 3 and 4 or 3 > 2) # 输出结果是2

4、while循环语句基本结构?

while 条件:

  循环体

else: 循环正常结束后会执行这里

5、利用while语句写出猜大小的游戏:
设定一个理想数字比如:66,让用户输入数字,如果比66大,则显示猜测
的结果大了;如果比66小,则显示猜测的结果小了;只有等于66,显示猜测结果
正确,然后退出循环。

s = 66
while True:
num = int(input("输入一个你猜的数字:"))
if num > s:
print("大了")
elif num < s:
print("小了")
else:
print("恭喜你猜对了")
break

6、在5题的基础上进行升级:
给用户三次猜测机会,如果三次之内猜测对了,则显示猜测正确,退出循
环,如果三次之内没有猜测正确,则⾃动退出循环,并显示‘太笨了你....’。

count = 1
while count <= 3:
num = int(input("输入一个你猜的数字吧:"))
if num > 66:
print("大了,大了,再小点")
elif num < 66:
print("小了,小了,再大点")
count += 1
else:
print("这个都猜不出来,太笨了吧....")

7.使用while循环输入 1 2 3 4 5 6 8 9 10

###  写法 1 
count = 1
while count <= 10:
if count == 7:
count += 1
print(count)
else:
print(count)
count += 1
## 写法 2
count = 1
while count < 11:
if count == 7:
count += 1
continue
else:
print(count)
count += 1 ## 写法 3
count = 1
while count <= 10:
if count != 7:
print(count)
count += 1

8.求1-100的所有数的和

sum = 0
count = 1
while count <= 100:
sum += count
count += 1
print(sum)

9.输出 1-100 内的所有奇数

## 第一种写法

count = 1
while count <= 100:
if count % 2 == 1:
print(count)
count += 1 # 第二种写法 count = 1
while count <= 100:
print(count)
count += 2

10.输出 1-100 内的所有偶数

# 写法 1
count = 2
while count <= 100:
print(count)
count += 2 ## 写法 2
count = 1
while count <= 100:
if count % 2 == 0:
print(count)
count += 1

11.求1-2+3-4+5 ... 99的所有数的和.

# 写法 1
sum = 0
count = 1
while count < 100:
if count % 2 == 1:
sum += count
count += 1
else:
sum -= count
count += 1
print(sum) ## 写法 2
sum = 0
count = 1
while count < 100:
if count % 2 == 1:
sum += count
else:
sum -= count
count += 1
print(sum)

###  看上面代码 注意看,差别在什么地方,为什么会出现这样的 结果???

12.用户登陆(三次输错机会)且每次输错误时显示剩余错误次数(提示:使用字符串格式)

count = 1
while count <= 3:
username = input("输入你的账号:")
password = input("输入你的密码:")
if username == "alex" and password == "":
print("登陆成功")
else:
print("登录失败,你还有%s次机会" % (3 - count))
print(f"登录失败,你还有{3 - count}次机会")
count += 1

13. 用户输入一个数. 判断这个数是否是个质数(升级题).

num = int(input("输入你要判断的数字:"))
if num == 1:
print("这个我也不知道了")
else:
count = 2
while count < num - 1:
if num % count == 0:
print("这个不是质数")
break
count += 1
else:
print("恭喜你,找到了一个质数")
####   循环 判断,  主动 退出
while 1:
num = int(input("输入你要判断的数字,输入0退出:"))
if num == 0:
print("退出中...")
break
elif num == 1:
print("我也不知道这个是不是,因为质数定义在大于1的基础上的")
else:
count = 2
while count <= num - 1:
if num % count == 0:
print("不是质数")
break
count += 1
else:
print("恭喜你找到了一个质数,再见了,朋友")
break

14. 输入一个广告标语. 判断这个广告是否合法. 根据最新的广告法来判断. 广
告法内容过多. 我们就判断是否包含'最', '第一', '稀缺', '国家级'等字样. 如果包
含. 提示, 广告不合法
           例如, 1. 老男孩python世界第一. ==> 不合法
                  2. 今年过年不收礼啊. 收礼只收脑白金. ==> 合法

while True:
content = input("输入你的广告语,输入Q退出:")
if content.upper() == "Q":
print("退出啦,再见...")
break elif "最" in content or "第一" in content or "稀缺" in content or "国家级" in content:
print("不合法,请重新输入")
continue
else:
print("广告合法")
break

14. 输入一个数. 判断这个数是几位数(用算法实现)(升级题)

num = int(input("输入一个你要判断的数字:"))
count = 0
while num >= 1:
num //= 10
count += 1
print(count)

while 循环 及 and or not的更多相关文章

  1. 【.net 深呼吸】细说CodeDom(8):分支与循环

    有人会问,为啥 CodeDom 不会生成 switch 语句,为啥没生成 while 语句之类.要注意,CodeDom只关心代码逻辑,而不是语法,语法是给写代码的人用的.如果用.net的“反编译”工具 ...

  2. Recurrent Neural Network系列1--RNN(循环神经网络)概述

    作者:zhbzz2007 出处:http://www.cnblogs.com/zhbzz2007 欢迎转载,也请保留这段声明.谢谢! 本文翻译自 RECURRENT NEURAL NETWORKS T ...

  3. Python学习--04条件控制与循环结构

    Python学习--04条件控制与循环结构 条件控制 在Python程序中,用if语句实现条件控制. 语法格式: if <条件判断1>: <执行1> elif <条件判断 ...

  4. 模仿Linux内核kfifo实现的循环缓存

    想实现个循环缓冲区(Circular Buffer),搜了些资料多数是基于循环队列的实现方式.使用一个变量存放缓冲区中的数据长度或者空出来一个空间来判断缓冲区是否满了.偶然间看到分析Linux内核的循 ...

  5. 【JS基础】循环

    for 循环的语法: for (语句 1; 语句 2; 语句 3) { 被执行的代码块 } 语句 1 在循环(代码块)开始前执行 语句 2 定义运行循环(代码块)的条件 语句 3 在循环(代码块)已被 ...

  6. 【python之路4】循环语句之while

    1.while 循环语句 #!/usr/bin/env python # -*- coding:utf-8 -*- import time bol = True while bol: print '1 ...

  7. To Java程序员:切勿用普通for循环遍历LinkedList

    ArrayList与LinkedList的普通for循环遍历 对于大部分Java程序员朋友们来说,可能平时使用得最多的List就是ArrayList,对于ArrayList的遍历,一般用如下写法: p ...

  8. JavaScript单线程和浏览器事件循环简述

    JavaScript单线程 在上篇博客<Promise的前世今生和妙用技巧>的开篇中,我们曾简述了JavaScript的单线程机制和浏览器的事件模型.应很多网友的回复,在这篇文章中将继续展 ...

  9. .NET基础 一步步 一幕幕[循环、逻辑语句块]

    循环.逻辑语句块   好久不写博客了,断更了好几天了,从上周五到今天,从北京到上海,跨越了1213.0公里,从一个熟悉的城市到陌生的城市,还好本人适应力比较好,还有感谢小伙伴的接风咯,一切都不是事,好 ...

  10. Linux进程管理及while循环

    目录 进程的相关概念 进程查看及管理工具的使用 Linux系统作业控制 调整进程优先级 网络客户端工具 bash之while循环 20.1.进程类型 守护进程 daemon,在系统引导过程中启动的进程 ...

随机推荐

  1. Jmeter接口测试 2=> Jmeter工具的介绍

    第一节 接口测试流程 参数化:EXCEl文件参数化.数据库参数化.直接代码中配置.配置文件 预处理请求(前置处理):对请求的参数进行预处理.准备,如加密数据.组织测试数据 发起请求:httpclien ...

  2. 【转载】android权限大全

    1.android.permission.WRITE_USER_DICTIONARY 允许应用程序向用户词典中写入新词 2.android.permission.WRITE_SYNC_SETTINGS ...

  3. C学习笔记-预备知识

    计算机结构组成 CPU(中央处理器)(控制器+运算器) 存储器(内存+外存) 输出设备 输入设备 计算机系统组成 硬件系统 主机 中央处理器 运算器 控制器 内存储器 只读存储器 随机存储器 外部设备 ...

  4. eclipse 如何从Gitee.com克隆工程到本地,并运行

    1.再项目资源管理器里选择导入,导入 2.在导入向导中选择Git,选择来自Git的项目 3.选克隆URL 4.输入URL 和用户密码,点击下一步 4.下一步 5.选择保存路径 6.选择下一步,自动导入 ...

  5. java面试指导2019-9-16

    说说List,Set,Map三者的区别? List(对付顺序的好帮手): List接口存储一组不唯一(可以有多个元素引用相同的对象),有序的对象 Set(注重独一无二的性质): 不允许重复的集合.不会 ...

  6. Flink与其他流处理方式的对比分析

    一.Flink与其他流处理方式的对比分析 ·1.Flink特点: Apache Flink 是一个开源的分布式,高性能,高可用,准确的流处理框架. 主要由 Java 代码实现. 支持实时流(strea ...

  7. Codeforces Round #225 (Div. 1) C. Propagating tree dfs序+ 树状数组或线段树

    C. Propagating tree Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/383/p ...

  8. 小白学习django第一站-环境配置

    Django简单来说就是用Python开发的一个免费开源的Web框架 使用Django,使你能够以最小的代价构建和维护高质量的Web应用. 开搞!!! 工具准备: linux(ubuntu) + py ...

  9. LeetCode 19——删除链表的倒数第N个节点(JAVA)

    给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点. 示例: 给定一个链表: 1->2->3->4->5, 和 n = 2. 当删除了倒数第二个节点后,链表变为 ...

  10. Linux的一个后门引发对PAM的探究

    转自http://www.91ri.org/16803.html 1.1   起因 今天在搜索关于Linux下的后门姿势时,发现一条命令如下:软链接后门: 1 ln -sf /usr/sbin/ssh ...