一. 条件语句

python条件语句是根据一条或多条语句的执行结果的真假(True Or False)来决定代码块的执行。

而执行内容可以多行,以缩进来区分表示同一范围。

1.Python判断条件真假的形式:

真 :  True, 非零,非空(即列表非空),非假等等

假:False, 0,空列表,空字典,空集合,非真等等

2.常见的判断条件:

if 语句的判断条件可以用>(大于)、<(小于)、==(等于)、>=(大于等于)、<=(小于等于)来表示其关系。

当判断条件为多个值时,可以使用以下形式:

条件语句的基本形式:

  1. if 判断语句:
  2. 语句块1
  3. elif 判断语句:
  4. 语句块2
  5. elif 判断语句:
  6. 语句块3
  7. else
  8. 语句块4
  9.  
  10. #注意可以有多个elif 语句,不能有多个else语句

条件语句的执行顺序:由上而下执行,判断语句,符合条件后,执行对应的语句块,执行完毕后退出条件语句。如下:

  1. _username = 'Wallace Wang' #定义一变量
  2. _password = ''
  3. username = input('username:') #让用户输入用户名
  4.  
  5. import getpass #python内置的一个模块,会在后文中提到
  6. password = getpass.getpass('passward:') # 在shell中是以密文的形式输入
  7. #password = input('password:') # 这里也可以不用密文的方式
  8. if _username == username and _password == password: # 如果if后面的条件成立
  9. print('Welcome user {name} login...'.format(name=username)) #执行if后面缩进的代码
  10. else: #如果不成立,执行else后面的代码
  11. print('Invald username or password!')

二.while循环语句:

Python 编程中 while 语句用于循环执行程序,即在某条件下,循环执语句块程序,执行完后再次判断该条件是否符合,若符合则继续执行语句块程序,直到遇到中断条件,或条件不符合则跳出循环语句。如下图是常见的执行顺序:

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

接下来以代码的形式解释该操作:

  1. >>numbers = [12,37,5,42,8,3]
  2. >>even = []
  3. >>odd = [] #创建一个长度为6的列表和俩个空列表
  4. >>while len(numbers)>0: #当numbers列表的长度大于0时,条件成立,执行后面语句
  5.  
  6. number = numbers.pop() #弹出numbers 的最末尾元素,并且赋值给number
  7. if (number % 2 == 0): #判断是否可以被2整除
  8. even.append(number) #可以执行
  9. else:
  10. odd.append(number) #不可以执行
  11.  
  12. #执行完if语句返回判断numbers的长度,直到条件不成立退出
  13.  
  14. >>numbers #最后3个列表的值分别为
  15. []
  16. >>even
  17. [8,42,12]
  18. >>odd
  19. [3,5,37]

前文所讲,退出循环的方式除了语句不满足还有两个方式分别为break和continue:

break:直接退出循环。

continue:跳过当前循环,进入下次循环。

  1. # continue 和 break 用法
  2.  
  3. i = 1
  4. while i < 10:
  5. i += 1
  6. if i%2 > 0: # 非双数时跳过输出
  7. continue
  8. print i # 输出双数2、4、6、8、10
  9.  
  10. j = 1
  11. while 1: # 循环条件为1必定成立
  12. print j # 输出1~10
  13. j += 1
  14. if j > 10: # 当i大于10时跳出循环
  15. break

永久循环:

  1. while True:
  2. a = int(input("请输入年龄:")
  3. if a > 18:
  4. print("已经成年")
  5. else:
  6. print("未成年")
  7.  
  8. #一般来说永久循环会结合用户输入

循环中else语句的使用:

在循环中,当while的条件语句不满足时,就会执行else后面的语句,但是由break退出的循环不会执行else语句,因为break是退出整个循环,如下所示:

  1. # continue 和 break 用法
  2.  
  3. i = 1
  4. while i < 10:
  5. i += 1
  6. if i%2 > 0: # 非双数时跳过输出
  7. continue
  8. print (i) # 输出双数2、4、6、8、10
  9. else
  10. print("退出循环") #输出双数后会输出”退出循环“
  11. j = 1
  12. while 1: # 循环条件为1必定成立
  13. print (j) # 输出1~10
  14. j += 1
  15. if j > 10: # 当i大于10时跳出循环
  16. break
  17. else
  18. print("退出循环") #不会输出这一语句,因为是break退出的

死循环,即无法退出的循环,对电脑的伤害大:

  1. while Ture:
  2. print("死循环") #执行该语句会无限打印

如果遇到死循环可以用 Ctrl+c退出循环。

三.for循环:

Python的for循环,一般用于遍历任何序列的项目,如一个列表或者一个字符串等。for循环的作用域是全局的,去最后一个值。

  1. for <variable> in <sequence>: #variable:变量 sequence:可迭代对象如list,tuple,str等
  2. <statements> #statements:语句块
  3. else:
  4. <statements> #这就是常见的for循环语句
  5.  
  6. #这里的else一般是指for上面的执行条件不成立即,退出后执行,break退出的不执行

下面举一常见的例子来分析for循环:

  1. for n in range(2, 10): #range会生成2-10的列表,但不包括10
  2. for x in range(2, n):
  3. if n % x == 0:
  4. print(n, '等于', x, '*', n//x)
  5. break
  6. else:
  7. # 循环中没有找到元素
  8. print(n, ' 是质数')
  9.  
  10. #这是一个嵌套循环,用于寻找2-10的质数
  11. >>
  12. 2 是质数
  13. 3 是质数
  14. 4 等于 2 * 2
  15. 5 是质数
  16. 6 等于 2 * 3
  17. 7 是质数
  18. 8 等于 2 * 4
  19. 9 等于 3 * 3

Python 全栈开发三 python基础 条件与循环的更多相关文章

  1. Python全栈开发记录_第一篇(循环练习及杂碎的知识点)

    Python全栈开发记录只为记录全栈开发学习过程中一些难和重要的知识点,还有问题及课后题目,以供自己和他人共同查看.(该篇代码行数大约:300行) 知识点1:优先级:not>and 短路原则:a ...

  2. python 全栈开发:python基础

    python具有优美.清晰.简单,是一个优秀并广泛使用的语言.诞生于1991年2.python历史 1989年,为了打发圣诞节假期,Guido开始写Python语言的编译器.Python这个名字,来自 ...

  3. Python 全栈开发四 python基础 函数

    一.函数的基本语法和特性 函数的定义 函数一词来源于数学,但编程中的「函数」概念,与数学中的函数是有很大不同的.函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需调用其函数 ...

  4. Python 全栈开发二 python基础 字符串 字典 集合

    一.字符串 1,在python中,字符串是最为常见的数据类型,一般情况下用引号来创建字符串. >>ch = "wallace" >>ch1 = 'walla ...

  5. python全栈开发-Day8 函数基础

    python全栈开发-Day8 函数 一 .引子 1. 为何要用函数之不用函数的问题 #1.代码的组织结构不清晰,可读性差 #2.遇到重复的功能只能重复编写实现代码,代码冗余 #3.功能需要扩展时,需 ...

  6. Python 全栈开发一 python初识

    1.Python简介 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC ...

  7. Python全栈开发【基础三】

    Python全栈开发[基础三]  本节内容: 函数(全局与局部变量) 递归 内置函数 函数 一.定义和使用 函数最重要的是减少代码的重用性和增强代码可读性 def 函数名(参数): ... 函数体 . ...

  8. Python全栈开发【基础四】

    Python全栈开发[基础四] 本节内容: 匿名函数(lambda) 函数式编程(map,filter,reduce) 文件处理 迭代器 三元表达式 列表解析与生成器表达式 生成器 匿名函数 lamb ...

  9. Python全栈开发【基础二】

    Python全栈开发[基础二] 本节内容: Python 运算符(算术运算.比较运算.赋值运算.逻辑运算.成员运算) 基本数据类型(数字.布尔值.字符串.列表.元组.字典) 其他(编码,range,f ...

随机推荐

  1. day_6.20动态加载py文件

    __import__() 魔法方法! 关于动态网站打开的  代码流程!

  2. .NET Core开发日志——从搭建开发环境开始

    .NET Core自2016年推出1.0版本开始,到目前已是2.1版本,在其roadmap计划里明年更会推出3.0版本,发展不可不谓之迅捷.不少公司在经过一个谨慎的观望期后,也逐步开始将系统升级至最新 ...

  3. Codeforces 1096D - Easy Problem - [DP]

    题目链接:http://codeforces.com/problemset/problem/1096/D 题意: 给出一个小写字母组成的字符串,如果该字符串的某个子序列为 $hard$,就代表这个字符 ...

  4. RuntimeError - [Xcodeproj] Unknown object version.解决方法

    wjw:layoutInScrollView username$ pod install Analyzing dependencies xcode-select: error: tool 'xcode ...

  5. yum下载rpm包

    方法一:downloadonly插件 1.安装插件 yum -y install yum-download  2.下载httpd软件包到当前文件夹内 yum -y install httpd -dow ...

  6. 进制转换 map

    a_z = [i for i in map(chr, range(ord('a'), ord('z') + 1))]'''Address of var1 variable: 240ff24Addres ...

  7. 什么是渲染目标(render target)&& 渲染到纹理(Render To Texture, RTT)详解

    渲染到纹理(Render To Texture, RTT)详解 RTT是现在很多特效里面都会用到的一项很基本的技术,实现起来很简单,也很重要.但是让人不解的是网上搜索了半天只找到很少的文章说这个事儿, ...

  8. stl, string不仅是charString, 更是byteString

     转载至:http://chzhou.blog.sohu.com/97459512.html 以前一直没有注意到STL中的string的length函数,但一直用它.天真的以为它会返回字符串的长度 ...

  9. sqlserver binary varbinary image 的区别

    sqlserver binary varbinary image 的区别   binary   固定长度的二进制数据,其最大长度为 8,000 个字节.   varbinary   可变长度的二进制数 ...

  10. 《linux 字符处理》- grep/sort/uniq/tr/paste

    一:基本 字符处理主要是文本的搜索和处理. 搜索也主要使用到了 管道 作为媒介. 二: grep 搜索文本 基本语法 * grep [-incv] ’文本’ 文件 * i 不区分大小写 * c 匹配行 ...