控制结构 条件语句
控制结构 条件语句
单分支决策 ·语法 if <condition>: yes <condition>true? <body> -<condition>:布尔表达式 no <Body> <body>:语句序列. ·语义:计算<condition:>的真假.若为真,则执行 <body>,并把控制转向下一条语句;若为假,则直 接把控制转向下一条语句. Lu Chaojun,SJTU 2
Lu Chaojun, SJTU 2 单分支决策 • 语法 if <condition>: <body> – <condition>: 布尔表达式 – <body>: 语句序列. • 语义:计算<condition>的真假.若为真,则执行 <body>,并把控制转向下一条语句;若为假,则直 接把控制转向下一条语句
条件表达式 ·简单条件:比较两个表达式 <expr1><rel-op><expr2> 关系运算:<,<=,=,>=,>,= -数值比较 一字符串比较:按字典序 人字母序由编码(ASCIⅡ等)决定.如:大写字母在小写字母前, <condition>是一个表达式,称为布尔表达式. -结果为true/false 人有些语言用0表示false,用1或非零值表示真 一复杂条件:详见后 Lu Chaojun,SJTU 3
Lu Chaojun, SJTU 3 条件表达式 • 简单条件:比较两个表达式 <expr1> <rel-op> <expr2> – 关系运算: <, <= , == , >= , >, != – 数值比较 – 字符串比较: 按字典序. ©字母序由编码(ASCII等)决定. 如:大写字母在小写字母前. • <condition>是一个表达式,称为布尔表达式. – 结果为true/false ©有些语言用0表示false,用1或非零值表示真. – 复杂条件:详见后. Lu Chaojun, SJTU
编程实例:有条件执行程序 ·回顾:Python模块分为 -程序/脚本:可直接执行 人模块最后一行是main(),即启动程序的语句 人执行方式 +直接执行 ★Windows下双击模块图标 ★DOS命令行下:python<myfile>.py +在会话或其他程序中import并执行 一库:不能直接执行 人模块中没有main()一行 人被其他程序import但不执行 Lu Chaojun,SJTU 4
Lu Chaojun, SJTU 4 编程实例:有条件执行程序 • 回顾:Python模块分为 – 程序/脚本:可直接执行 ©模块最后一行是main(),即启动程序的语句 ©执行方式 ª直接执行 «Windows下双击模块图标 «DOS命令行下: python <myfile>.py ª在会话或其他程序中import并执行 – 库:不能直接执行 ©模块中没有main()一行 ©被其他程序import但不执行
编程实例:有条件执行程序(续) ·混合型模块:既能作为独立程序直接执行, 又能作为库被其他程序import而不执行 #myfile.py import一个模块时,Python将该模 def main(): 块中的一个特殊变量 name 设 置为该模块的名字: 直接执行模块时, name 被设 def other(): 置为' main if name ==、main': main() Lu Chaojun,SJTU 5
Lu Chaojun, SJTU 5 编程实例:有条件执行程序(续) • 混合型模块:既能作为独立程序直接执行, 又能作为库被其他程序import而不执行. #myfile.py def main(): … def other(): … if __name__ == ‘__main__’: main() • import一个模块时,Python将该模 块中的一个特殊变量__name__设 置为该模块的名字; • 直接执行模块时, __name__被设 置为’__main__’