Python 全栈开发三 python基础 条件与循环
一. 条件语句
python条件语句是根据一条或多条语句的执行结果的真假(True Or False)来决定代码块的执行。
而执行内容可以多行,以缩进来区分表示同一范围。
1.Python判断条件真假的形式:
真 : True, 非零,非空(即列表非空),非假等等
假:False, 0,空列表,空字典,空集合,非真等等
2.常见的判断条件:
if 语句的判断条件可以用>(大于)、<(小于)、==(等于)、>=(大于等于)、<=(小于等于)来表示其关系。
当判断条件为多个值时,可以使用以下形式:
条件语句的基本形式:
if 判断语句:
语句块1
elif 判断语句:
语句块2
elif 判断语句:
语句块3
else:
语句块4 #注意可以有多个elif 语句,不能有多个else语句
条件语句的执行顺序:由上而下执行,判断语句,符合条件后,执行对应的语句块,执行完毕后退出条件语句。如下:
_username = 'Wallace Wang' #定义一变量
_password = ''
username = input('username:') #让用户输入用户名 import getpass #python内置的一个模块,会在后文中提到
password = getpass.getpass('passward:') # 在shell中是以密文的形式输入
#password = input('password:') # 这里也可以不用密文的方式
if _username == username and _password == password: # 如果if后面的条件成立
print('Welcome user {name} login...'.format(name=username)) #执行if后面缩进的代码
else: #如果不成立,执行else后面的代码
print('Invald username or password!')
二.while循环语句:
Python 编程中 while 语句用于循环执行程序,即在某条件下,循环执语句块程序,执行完后再次判断该条件是否符合,若符合则继续执行语句块程序,直到遇到中断条件,或条件不符合则跳出循环语句。如下图是常见的执行顺序:

接下来给一个网上找的一个动态实例,来演示while循环:

接下来以代码的形式解释该操作:
>>numbers = [12,37,5,42,8,3]
>>even = []
>>odd = [] #创建一个长度为6的列表和俩个空列表
>>while len(numbers)>0: #当numbers列表的长度大于0时,条件成立,执行后面语句 number = numbers.pop() #弹出numbers 的最末尾元素,并且赋值给number
if (number % 2 == 0): #判断是否可以被2整除
even.append(number) #可以执行
else:
odd.append(number) #不可以执行 #执行完if语句返回判断numbers的长度,直到条件不成立退出 >>numbers #最后3个列表的值分别为
[]
>>even
[8,42,12]
>>odd
[3,5,37]
前文所讲,退出循环的方式除了语句不满足还有两个方式分别为break和continue:
break:直接退出循环。
continue:跳过当前循环,进入下次循环。
# continue 和 break 用法 i = 1
while i < 10:
i += 1
if i%2 > 0: # 非双数时跳过输出
continue
print i # 输出双数2、4、6、8、10 j = 1
while 1: # 循环条件为1必定成立
print j # 输出1~10
j += 1
if j > 10: # 当i大于10时跳出循环
break
永久循环:
while True:
a = int(input("请输入年龄:")
if a > 18:
print("已经成年")
else:
print("未成年") #一般来说永久循环会结合用户输入
循环中else语句的使用:
在循环中,当while的条件语句不满足时,就会执行else后面的语句,但是由break退出的循环不会执行else语句,因为break是退出整个循环,如下所示:
# continue 和 break 用法 i = 1
while i < 10:
i += 1
if i%2 > 0: # 非双数时跳过输出
continue
print (i) # 输出双数2、4、6、8、10
else:
print("退出循环") #输出双数后会输出”退出循环“
j = 1
while 1: # 循环条件为1必定成立
print (j) # 输出1~10
j += 1
if j > 10: # 当i大于10时跳出循环
break
else:
print("退出循环") #不会输出这一语句,因为是break退出的
死循环,即无法退出的循环,对电脑的伤害大:
while Ture:
print("死循环") #执行该语句会无限打印
如果遇到死循环可以用 Ctrl+c退出循环。
三.for循环:
Python的for循环,一般用于遍历任何序列的项目,如一个列表或者一个字符串等。for循环的作用域是全局的,去最后一个值。
for <variable> in <sequence>: #variable:变量 sequence:可迭代对象如list,tuple,str等
<statements> #statements:语句块
else:
<statements> #这就是常见的for循环语句 #这里的else一般是指for上面的执行条件不成立即,退出后执行,break退出的不执行
下面举一常见的例子来分析for循环:
for n in range(2, 10): #range会生成2-10的列表,但不包括10
for x in range(2, n):
if n % x == 0:
print(n, '等于', x, '*', n//x)
break
else:
# 循环中没有找到元素
print(n, ' 是质数') #这是一个嵌套循环,用于寻找2-10的质数
>>
2 是质数
3 是质数
4 等于 2 * 2
5 是质数
6 等于 2 * 3
7 是质数
8 等于 2 * 4
9 等于 3 * 3
Python 全栈开发三 python基础 条件与循环的更多相关文章
- Python全栈开发记录_第一篇(循环练习及杂碎的知识点)
Python全栈开发记录只为记录全栈开发学习过程中一些难和重要的知识点,还有问题及课后题目,以供自己和他人共同查看.(该篇代码行数大约:300行) 知识点1:优先级:not>and 短路原则:a ...
- python 全栈开发:python基础
python具有优美.清晰.简单,是一个优秀并广泛使用的语言.诞生于1991年2.python历史 1989年,为了打发圣诞节假期,Guido开始写Python语言的编译器.Python这个名字,来自 ...
- Python 全栈开发四 python基础 函数
一.函数的基本语法和特性 函数的定义 函数一词来源于数学,但编程中的「函数」概念,与数学中的函数是有很大不同的.函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需调用其函数 ...
- Python 全栈开发二 python基础 字符串 字典 集合
一.字符串 1,在python中,字符串是最为常见的数据类型,一般情况下用引号来创建字符串. >>ch = "wallace" >>ch1 = 'walla ...
- python全栈开发-Day8 函数基础
python全栈开发-Day8 函数 一 .引子 1. 为何要用函数之不用函数的问题 #1.代码的组织结构不清晰,可读性差 #2.遇到重复的功能只能重复编写实现代码,代码冗余 #3.功能需要扩展时,需 ...
- Python 全栈开发一 python初识
1.Python简介 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC ...
- Python全栈开发【基础三】
Python全栈开发[基础三] 本节内容: 函数(全局与局部变量) 递归 内置函数 函数 一.定义和使用 函数最重要的是减少代码的重用性和增强代码可读性 def 函数名(参数): ... 函数体 . ...
- Python全栈开发【基础四】
Python全栈开发[基础四] 本节内容: 匿名函数(lambda) 函数式编程(map,filter,reduce) 文件处理 迭代器 三元表达式 列表解析与生成器表达式 生成器 匿名函数 lamb ...
- Python全栈开发【基础二】
Python全栈开发[基础二] 本节内容: Python 运算符(算术运算.比较运算.赋值运算.逻辑运算.成员运算) 基本数据类型(数字.布尔值.字符串.列表.元组.字典) 其他(编码,range,f ...
随机推荐
- 正则表达式中,[\s\S]* 什么意思
https://blog.csdn.net/haoyuedangkong_fei/article/details/53781936 例如:[a-z]表示从a到z之间的任意一个. 不是这样的吗?谁能给我 ...
- mui---子页面主动调用父页面的方法
我们在做APP的时候,很多时候会有这样的功能需求,例如:登录,充值,如果登录成功,或充值成功后,需要更改当前页面以及父页面的状态信息,就会用到在子页面调用父页面的方法来实现:在子页面刷新父页面的功能. ...
- mongodb三种存储引擎高并发更新性能专题测试
背景说明 近期北京理财频道反馈用来存放股市实时数据的MongoDB数据库写响应请求很慢,难以跟上业务写入速度水平.我们分析了线上现场的情况,发现去年升级到SSD磁盘后,数据持久化的磁盘IO开销已经不是 ...
- PDO 基础知识
PDO: 一.含义: 数据访问抽象层 二.作用 :通过PDO能够访问其它的数据库 三. 用法: 1.造对象 ①$dsn="mysql:dbname=zz(数据库名);host=localho ...
- SQL中的between and
"between xx and xx "在SQL中的用法 这个大家都很熟悉,但是当问到是否包含两端的值时,就有点儿不确定了.在W3School网站上,有这样的一段话: 参考:ht ...
- css学习_标签的显示模式
标签的显示模式 a.块级元素(最典型的是 div标签) 特点: 默认宽度 100% 可以容纳块级元素和内联元素 b.行内元素 (最典型的是 span标签) 特点: c.行内块元素(最典型的是 i ...
- Win10正式版U盘安装教程
1.首先我们需要登陆“微软中国下载中心”,从中下载一款名为“MediaCreationTool”的工具,利用该工具可以制作Win10安装U盘.直接通过以下地址快速进入“Windows下载中心”,根据自 ...
- 【Linux】Linux 常用命令汇总
查看软件xxx安装内容:dpkg -L xxx 查找软件库中的软件:apt-cache search 正则表达式 查找软件库中的软件:aptitude search 软件包 查找文件属于哪个包:dpk ...
- LeetCode 832 Flipping an Image 解题报告
题目要求 Given a binary matrix A, we want to flip the image horizontally, then invert it, and return the ...
- 洛谷P2303 [SDOi2012] Longge的问题 数论
看懂了题解,太妙了TT但是想解释的话可能要很多数学公式打起来太麻烦了TT所以我就先只放代码具体推演的过程我先写在纸上然后拍下来做成图片放上来算辣quq 好的那我先滚去做题了做完这题就把题解放上来.因为 ...