python3之if语句

获得更多资料欢迎进入我的网站或者 csdn或者博客园

本节主要介绍pythonif条件语句,以及用法。下面附有之前的文章;

python3入门之赋值语句介绍

python3入门之print,import,input介绍

python入门之字典

python入门之字符串

python入门之列表和元组

python入门之软件安装

语句快介绍

语句快并非一种语句,是通过缩进形成的语句集合;

可以使用的缩进符:TAb建(相当于四个空格),4个空格,8个空格,可以成倍增加形成嵌套语句快;

一般来说使用四个空格是最规范的。

功能:语句快是在条件为真时执行(if)或执行多次(循环)的一组语句;

#伪代码
this is a line
this is a condition:
    this is a block
    .....
there wo escaped the inner block

条件和条件语句

布尔型介绍

假(false):会被看做假的值:

FALSE ,None ,0 ,‘ ’ (没有空格) ,“ ” (没有空格) ,() ,[] ,{}

真(true):其他的都会被判定为真:

测试如下:

#假
>>> bool(False)
False
>>> bool(None)
False
>>> bool(‘‘)
False
>>> bool("")
False
>>> bool()
False
>>> bool([])
False
>>> bool(())
False
>>> bool({})
False
>>>
#真
>>> bool(True)
True
>>> bool(‘ddd‘)
True
>>> bool(1)
True
>>> bool([1])
True
>>> bool((1))
True
>>> bool({1})
True
>>> 

条件执行和if语句

if语句

if语句可以实现条件执行,如果条件判定为真,则后面的语句块执行,如果条件为假,语句块就不会被执行。

#如果用户输入:0-9 就打印True
>>> x=int(input("Please enter an integer in 0-9 "))
Please enter an integer in 0-9 6
if 0<x<9:
    print(True)

True

else语句

else子句(之所以叫子句,是因为它不是独立的语句,而只能作为if语句的一部分)当条件不满足时执行;

#如果用户输入:0-9 就打印True,不在之类输出 False
>>> x=int(input("Please enter an integer in 0-9 "))
Please enter an integer in 0-9 11
>>> if 0<x<9:
...     print(True)
... else:
...     print(False)
...
False

elif语句

如果需要检查多个条件,就可以使用elif,它是“else if”的简写,也是if和else子句的联合使用——也就是具有条件的else子句。

#如果用户输入在0-9:就打印in 0-9 ,否则如果输出大于9:就打印 >9,否则打印:<0
>>> x=int(input("Please enter an integer in 0-9 "))
Please enter an integer in 0-9 -1
>>> if 0<x<9:
...     print("in 0-9")
... elif x>9:
...     print(">9")
... else:
...     print("<0")
...
<0
>>>

嵌套if语句

if语句里可以嵌套使用if语句:

x=int(input("Please enter an integer in 0-9 "))
if x>=0:
    if x>9:
        print("x>9")
    elif x==0:
        print("x==0")
else:
    print(‘x<0‘)

Please enter an integer in 0-9 0
x==0

更复杂的条件:

条件运算符一览:

#比较运算符
x==y x等于y
x<y x小于y
x>y x大于y
x>=y x大于等于y
x<=y x小于等于y
x!=y x不等于y
a<x<b  x大于a小于b
#同一性运算符
x is y x和y是同一个对象
x is not y x和y是不同的对象
#成员资格运算符
x in y x是y容器的成员
x not in y x不是y容器的成员

同一性运算符说明:

看以来和==一样实际是时不同的,只有两个绑定在相同的对象时才是真(当然当为数值变量时是和==相同的):

#a与b不时指向同一对象
>>> a=[1,2]
>>> b=[1,2]
>>> a is b
False
#a与b指向同一对象
>>> a=b=[1,2]
>>> a is b
True

in成员资格运算符说明

#成员在序列中返回真
>>> a=[1,2,3]
>>> b=1
>>> c=4
>>> b in a
True
>>> c in a
False
>>> 

逻辑运算符:

and :x and y 返回的结果是决定表达式结果的值。如果 x 为真,则 y 决定结果,返回 y ;如果 x 为假,x 决定了结果为假,返回 x。

or :x or y 跟 and 一样都是返回决定表达式结果的值。

not : 返回表达式结果的“相反的值”。如果表达式结果为真,则返回false;如果表达式结果为假,则返回true。

>>> a=1
>>> b=2
>>> a and b
2
>>> a=1
>>> b=0
>>> a and b
0
>>> a or b
1
>>> not b
True
>>>

断言简介

if语句有个非常有用的近亲,其工作方式多少有点像下面这样(伪代码):

if not condition:

crash program

这样做是因为与其让程序在晚些时候崩溃,不如在错误条件出现时直接让它崩溃。一般来说,你可以要求某些条件必须为真。语句中使用的关键字为assert。

如果需要确保程序中的某个条件一定为真才能让程序正常工作的话,assert语句就有用了,可以在程序中置入检查点:

条件后可以添加字符串(用逗号把条件和字符串隔开),用来解释断言:

>>> age=-1
>>> assert 0<age<150,"The age must be realistic"
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AssertionError: The age must be realistic
>>>
>>> age=10
>>> assert 0<age<150,"The age must be realistic"
>>> 

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-08-13 18:23:35

python3之if语句的相关文章

Python3基础 else 语句 与try-except配合

镇场诗: 诚听如来语,顿舍世间名与利.愿做地藏徒,广演是经阎浮提. 愿尽吾所学,成就一良心博客.愿诸后来人,重现智慧清净体.------------------------------------------ex1: code: #如果没出错,else语句就执行 try : raise OSError('手动指明原因') except OSError as reason: print('yichang',str(reason)) else : print('程序无异常') finally: pr

【转】 Python3 With as 语句如何理解

< python 标准库 >上这么一句话: [python] view plain copy with open('filename', 'wt') as f: f.write('hello, world!') 我不明白为什么这样写,下面这篇文章对此做出了解释 原文地址:http://python.42qu.com/11155501 With语句是什么? Python's with statement provides a very convenient way of dealing with

python2 与 python3的区别总结

python2 与 python3的区别总结 几乎所有的Python 2程序都需要一些修改才能正常地运行在Python 3的环境下.为了简化这个转换过程,Python 3自带了一个叫做2to3的实用脚本(Utility Script),这个脚本会将你的Python 2程序源文件作为输入,然后自动将其转换到Python 3的形式. 案例研究:将chardet移植到Python 3(porting chardet to Python 3)描述了如何运行这个脚本,然后展示了一些它不能自动修复的情况.这

python3之循环

本节主要介绍python中循环语句的用法以及其他一些语句exec等,文章后面附有之前的文章: 循环语句 if是值执行一次而循环时在条件满足情况下可以执行相同语句多次:使用循环可以轻松实现序列,词典等的迭代: while循环: 用来在任何条件为真的情况下重复执行一个代码快: while i>0: 代码快 其他代码: 演示如下: >>>i=10 >>> while i>0: ... print("i=",i) ... i-=1 ... i=

python2 与 python3的区别

几乎所有的python2程序都需要一些修改才能正常的运行在python3的环境下.为了简化这个转换过程,Python3自带了一个2to3的实用脚本.这个脚本会将python2程序源文件作为输入,然后自动转换到python3.但并不是所有内容都可以自动转换. print语句 python2中print是一个语句,不论想输出什么,直接放到print关键字后面即可.python3里,print()是一个函数,像其他函数一样,print()需要你将要输出的东西作为参数传给它. python2 pytho

python2.+进化至python3.+ 语法变动差异(不定期更新)

1.输出 python2.+ 输出: print "" python3.+ 输出: print ("") 2.打开文件 python2.+ 打开文件: file()或open() python3.+ 打开文件: open() 3.thread模块 python2.+ 导入thread模块: import thread 线程运行方法: thread.start_new_thread() python3.+ 导入thread模块: import _thread 线程运行

[IT学习]Learn Python the Hard Way (Using Python 3)笨办法学Python3版本

黑客余弦先生在知道创宇的知道创宇研发技能表v3.1中提到了入门Python的一本好书<Learn Python the Hard Way(英文版链接)>.其中的代码全部是2.7版本. 如果你觉得英文版看着累,当当网有中文版,也有电子版可以选择. 我试着将其中的代码更新到Python 3.同时附上一些自己的初学体会,希望会对你有帮助. 中文版有人把书名翻译为<笨办法学python>,其实我觉得叫做<学Python,不走寻常路>更有意思些. 作者的意思你可以在序言中详细了解

一、 Python概述、变量

一.        Python概述 1.python是一门面向对象,解释型的脚本语言.语法简洁,编写效率高,但是执行(底层运行)效率低(总的来说解释语言执行效率低于编译语言). 注意:本博客所有的代码都是按照Python3的标准创建的. 2.主要的语言特点是:任何的语句可以独立存在.并且代码块是以(:)开始的,注意每个语句的缩进空格(缩进格式决定语句的包含关系和执行顺序),在python里面缩进空格相当于java里面的"{ }",并且没有一个明确的规定说要求几个空格,一般如果本句被上

Python 3从入门到精通01-环境搭建

本系列开始介绍Python3的基础教程,为什么要选中Python 3呢?因为最近看到一些资料和课程,都是Python 3授课的,例如,大数据,机器学习,数据挖掘等等:还有一个目的,我想彻底地,系统地学习下Python 3的基础部分,然后再考虑其他的.有兴趣的,可以也跟着学习,把基本功学好. 1.下载 1)打开https://www.python.org/downloads/ 当前最新版本是3.6.1 2. 安装 下载完了后,双击这个exe文件,第一个页面底部,记得勾选add Python to