• Python——三目运算符


    一、三目运算符

    1、if语句三目运算符语法格式

    Python可以通过if'语句来实现三目运算符的功能,因此可以把这种if语句当做三目运算符,具体语法格式如下:

    返回True执行 if 表达式 else 返回False执行

    例:

    a = "返回True执行" if 3 > 4 else "返回False执行"
    print (a)  

    运行结果:

    返回False执行

    实际上,如果只是为了在控制台输出信息,可以修改如下:

    print("返回True执行") if 3 > 4 else print("返回False执行")	# 运行结果:返回False执行

    2、在三目运算符中放置多条语句方式

    在Python的三目运算符中,允许在"返回True执行"和"返回Flase执行"中放置多条语句,有以下两种方式:

    - 使用英文逗号隔开,每条放置的语句都会执行,程序返回多条语句的返回值组成的元组。
    例:

    b = 3 + 1, "3 > 2",print('AAA') if 1 > 2 else print("BBB"),2 + 2
    print (b)


    上面的例子中,因为 1 > 2 是False,所以执行并返回3 + 1,"3 > 2",2 + 2,print("BBB")这四条语句,由于print()函数没有返回值,故返回None,运行结果如下:

    BBB
    (4, '3 > 2', None, 4)


    - 使用英文分号隔开,每条语句都会执行,但程序只会返回第一条语句的返回值。
    例:

    b = 1 + 1; "3 > 2";print('AAA') if 1 > 2 else print("BBB");2 + 2
    print (b)

    这里的if...else...执行print("BBB"),返回的是第一条语句1 + 1的返回值2,所以,运行结果如下:

    BBB
    2

    3、嵌套三目运算符

    我们可以通过嵌套三目运算符,执行更加复杂的判断。
    例:

    x = 3
    y = 5
    print("x = y") if x == y else print("x > y") if x > y else print("x < y")

    上面的例子先对x == y求值,如果返回True,则执行并返回表达式print("x = y"),否则执行嵌套的三目运算符表达式print("x > y") if x > y else print("x < y"),此时对x > y求值,如果返回True,则执行并返回表达式print("x > y"),否则执行并返回print("x < y"),运行结果:

    x < y
  • 相关阅读:
    【Atcoder】CODE FESTIVAL 2017 qual C D
    【BZOJ】4756: [Usaco2017 Jan]Promotion Counting
    【Luogu】P3933 Chtholly Nota Seniorious
    【BZOJ】1914: [Usaco2010 OPen]Triangle Counting 数三角形
    【算法】计算几何
    【BZOJ】1774: [Usaco2009 Dec]Toll 过路费
    【BZOJ】2200: [Usaco2011 Jan]道路和航线
    【BZOJ】1833 [ZJOI2010]count 数字计数
    【BZOJ】1731: [Usaco2005 dec]Layout 排队布局
    【BZOJ】1577: [Usaco2009 Feb]庙会捷运Fair Shuttle
  • 原文地址:https://www.cnblogs.com/mingmingming/p/11050316.html
Copyright © 2020-2023  润新知