Python 条件语句

Python 条件语句

Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。

可以通过下图来简单了解条件语句的执行过程:

Python程序语言指定任何非0和非空(null)值为true,0 或者 null为false。

Python 编程中 if 语句用于控制程序的执行,基本形式为:

if 判断条件:
    执行语句……
else
    执行语句……

其中"判断条件"成立时(非零),则执行后面的语句,而执行内容可以多行,以缩进来区分表示同一范围。

else 为可选语句,当需要在条件不成立时执行内容则可以执行相关语句,具体例子如下:

实例

#!/usr/bin/python # -*- coding: UTF-8 -*- # 例1:if 基本用法 flag = False name = ' luren ' if name == ' python ' : # 判断变量否为'python' flag = True # 条件成立时设置标志为真 print ' welcome boss ' # 并输出欢迎信息 else : print name # 条件不成立时输出变量名称

输出结果为:

luren			# 输出结果

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

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

if 判断条件1:
    执行语句1……
elif 判断条件2:
    执行语句2……
elif 判断条件3:
    执行语句3……
else:
    执行语句4……

实例如下:

实例

#!/usr/bin/python # -*- coding: UTF-8 -*- # 例2:elif用法 num = 5 if num == 3 : # 判断num的值 print ' boss ' elif num == 2 : print ' user ' elif num == 1 : print ' worker ' elif num < 0 : # 值小于零时输出 print ' error ' else : print ' roadman ' # 条件均不成立时输出

输出结果为:

roadman		# 输出结果

由于 python 并不支持 switch 语句,所以多个条件判断,只能用 elif 来实现,如果判断需要多个条件需同时判断时,可以使用 or (或),表示两个条件有一个成立时判断条件成功;使用 and (与)时,表示只有两个条件同时成立的情况下,判断条件才成功。

实例

#!/usr/bin/python # -*- coding: UTF-8 -*- # 例3:if语句多个条件 num = 9 if num >= 0 and num <= 10 : # 判断值是否在0~10之间 print ' hello ' # 输出结果: hello num = 10 if num < 0 or num > 10 : # 判断值是否在小于0或大于10 print ' hello ' else : print ' undefine ' # 输出结果: undefine num = 8 # 判断值是否在0~5或者10~15之间 if ( num >= 0 and num <= 5 ) or ( num >= 10 and num <= 15 ) : print ' hello ' else : print ' undefine ' # 输出结果: undefine

当if有多个条件时可使用括号来区分判断的先后顺序,括号中的判断优先执行,此外 and 和 or 的优先级低于>(大于)、<(小于)等判断符号,即大于和小于在没有括号的情况下会比与或要优先判断。

简单的语句组

你也可以在同一行的位置上使用if条件判断语句,如下实例:

实例

#!/usr/bin/python # -*- coding: UTF-8 -*- var = 100 if ( var == 100 ) : print " 变量 var 的值为100 " print " Good bye! "

以上代码执行输出结果如下:

变量 var 的值为100
Good bye!
 
经典评论:


 
 

   神仙氏族

  a72***@qq.com

python 复合布尔表达式计算采用短路规则,即如果通过前面的部分已经计算出整个表达式的值,则后面的部分不再计算。如下面的代码将正常执行不会报除零错误:

a=0
b=1
if ( a > 0 ) and ( b / a > 2 ):
    print "yes"
else :
    print "no"

而下面的代码就会报错:

a=0
b=1
if ( a > 0 ) or ( b / a > 2 ):
    print "yes"
else :
    print "no"

  
  
   
   

   神仙氏族

  a72***@qq.com

python 复合布尔表达式计算采用短路规则,即如果通过前面的部分已经计算出整个表达式的值,则后面的部分不再计算。如下面的代码将正常执行不会报除零错误:

a=0
b=1
if ( a > 0 ) and ( b / a > 2 ):
    print "yes"
else :
    print "no"

而下面的代码就会报错:

a=0
b=1
if ( a > 0 ) or ( b / a > 2 ):
    print "yes"
else :
    print "no"

#!/usr/bin/env python
# -*- coding: UTF-8 -*-
# 一个简单的条件循环语句实现汉诺塔问题

def my_print(args):
    print args

def move(n, a, b, c):
    my_print ((a, '-->', c)) if n==1 else (move(n-1,a,c,b) or move(1,a,b,c) or move(n-1,b,a,c))

move (3, 'a', 'b', 'c')


   神仙氏族

  a72***@qq.com

python 复合布尔表达式计算采用短路规则,即如果通过前面的部分已经计算出整个表达式的值,则后面的部分不再计算。如下面的代码将正常执行不会报除零错误:

a=0
b=1
if ( a > 0 ) and ( b / a > 2 ):
    print "yes"
else :
    print "no"

而下面的代码就会报错:

a=0
b=1
if ( a > 0 ) or ( b / a > 2 ):
    print "yes"
else :
    print "no"
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SQLAlchemy 是一个 SQL 工具包和对象关系映射(ORM)库,用于 Python 编程语言。它提供了一个高级的 SQL 工具和对象关系映射工具,允许开发者以 Python 类和对象的形式操作数据库,而无需编写大量的 SQL 语句。SQLAlchemy 建立在 DBAPI 之上,支持多种数据库后端,如 SQLite, MySQL, PostgreSQL 等。 SQLAlchemy 的核心功能: 对象关系映射(ORM): SQLAlchemy 允许开发者使用 Python 类来表示数据库表,使用类的实例表示表中的行。 开发者可以定义类之间的关系(如一对多、多对多),SQLAlchemy 会自动处理这些关系在数据库中的映射。 通过 ORM,开发者可以像操作 Python 对象一样操作数据库,这大大简化了数据库操作的复杂性。 表达式语言: SQLAlchemy 提供了一个丰富的 SQL 表达式语言,允许开发者以 Python 表达式的方式编写复杂的 SQL 查询。 表达式语言提供了对 SQL 语句的灵活控制,同时保持了代码的可读性和可维护性。 数据库引擎和连接池: SQLAlchemy 支持多种数据库后端,并且为每种后端提供了对应的数据库引擎。 它还提供了连接池管理功能,以优化数据库连接的创建、使用和释放。 会话管理: SQLAlchemy 使用会话(Session)来管理对象的持久化状态。 会话提供了一个工作单元(unit of work)和身份映射(identity map)的概念,使得对象的状态管理和查询更加高效。 事件系统: SQLAlchemy 提供了一个事件系统,允许开发者在 ORM 的各个生命周期阶段插入自定义的钩子函数。 这使得开发者可以在对象加载、修改、删除等操作时执行额外的逻辑。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值