Py4Inf-03-ConditionalPy4Inf-03-Conditional

上传人:海天 文档编号:23993782 上传时间:2017-10-22 格式:PDF 页数:32 大小:757.60KB
返回 下载 相关 举报
Py4Inf-03-ConditionalPy4Inf-03-Conditional_第1页
第1页 / 共32页
Py4Inf-03-ConditionalPy4Inf-03-Conditional_第2页
第2页 / 共32页
Py4Inf-03-ConditionalPy4Inf-03-Conditional_第3页
第3页 / 共32页
Py4Inf-03-ConditionalPy4Inf-03-Conditional_第4页
第4页 / 共32页
Py4Inf-03-ConditionalPy4Inf-03-Conditional_第5页
第5页 / 共32页
亲,该文档总共32页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《Py4Inf-03-ConditionalPy4Inf-03-Conditional》由会员分享,可在线阅读,更多相关《Py4Inf-03-ConditionalPy4Inf-03-Conditional(32页珍藏版)》请在金锄头文库上搜索。

1、Conditional ExecutionChapter 3Python for Informatics: Exploring IUnless otherwise noted, the content of this course material is licensed under a Creative Commons Attribution 3.0 License.http:/creativecommons.org/licenses/by/3.0/.Copyright 2010- Charles R. SeveranceConditional StepsOutput:SmallerFini

2、sProgram:x = 5if x 20: print Biggerprint Finisx = 5X 20 ?print Biggerprint FinisYesYesComparison OperatorsBoolean expressions ask a question and produce a Yes or No result which we use to control program flowBoolean expressions using comparison operators evaluate to - True / False - Yes / NoComparis

3、on operators look at variables but do not change the variableshttp:/en.wikipedia.org/wiki/George_BooleRemember: “=” is used for assignment.Python Meaning= Greater than or Equal Greater than!= Not equalComparison Operatorsx = 5if x = 5 : print Equals 5if x 4 :print Greater than 4if x = 5 :print Great

4、er than or Equal 5if x Preferences - Language Menu/Tab SettingsTextWrangler: TextWrangler - Preferences - Editor DefaultsPython cares a *lot* about how far line is indented. If you mix tabs and spaces, you may get “indentation errors” even if everything looks finePlease do this now while you are thi

5、nking about it so we can all stay sane.This will save you much unnecessary pain.x = 5if x 2 :print Bigger than 2print Still biggerprint Done with 2for i in range(5) :print iif i 2 : print Bigger than 2print Done with i, ix = 5if x 2 :# commentsprint Bigger than 2# dont matterprint Still bigger# but

6、can confuse youprint Done with 2# if you dont line # them upincrease / maintain after if or fordecrease to indicate end of blockblank lines and comment lines ignoredMental begin/end squaresx = 5if x 2 :print Bigger than 2print Still biggerprint Done with 2for i in range(5) :print iif i 2 : print Big

7、ger than 2print Done with i, ix = 5if x 2 :# commentsprint Bigger than 2# dont matterprint Still bigger# but can confuse youprint Done with 2# if you dont line # them upx 1print More than onex 1 :print More than oneif x 1print More than onex 1 :print More than oneif x 1print More than onex 1 :print

8、More than oneif x 2print BiggeryesnoX = 4print Not biggerprint All DoneTwo-way using else :x = 4if x 2 :print Biggerelse :print Smallerprint All donex 2print BiggeryesnoX = 4print Smallerprint All DoneTwo-way using else :x = 4if x 2 :print Biggerelse :print Smallerprint All donex 2print BiggeryesnoX

9、 = 4print Smallerprint All DoneMulti-wayif x = 2 : print Two or moreelse :print Something elseWhich will never print?The try / except StructureYou surround a dangerous section of code with try and except.If the code in the try works - the except is skippedIf the code in the try fails - it jumps to t

10、he except section$ cat notry.py astr = Hello Bobistr = int(astr)print First, istrastr = 123istr = int(astr)print Second, istr$ python notry.py Traceback (most recent call last):File notry.py, line 2, in istr = int(astr)ValueError: invalid literal for int() with base 10: Hello BobThe program stops he

11、reAllDone SoftwareInputDevicesCentralProcessingUnitMainMemoryOutputDevicesSecondaryMemoryGenericComputer$ cat tryexcept.py astr = Hello Bobtry:istr = int(astr)except:istr = -1print First, istrastr = 123try:istr = int(astr)except:istr = -1print Second, istr$ python tryexcept.py First -1Second 123When

12、 the first conversion fails - it just drops into the except: clause and the program continues.When the second conversion succeeds - it just skips the except: clause and the program continues.try / exceptastr = Bobastr = Bobtry:print Helloistr = int(astr)print Thereexcept:istr = -1print Done, istrpri

13、nt Helloprint Thereistr = int(astr)print Done, istristr = -1Safety netSample try / except$ python trynum.py Enter a number:42Nice work$ python trynum.pyEnter a number:fourtytwoNot a number$rawstr = raw_input(Enter a number:)try: ival = int(rawstr)except: ival = -1if ival 0 : print Nice workelse: pri

14、nt Not a numberExerciseRewrite your pay computation to give the employee 1.5 times the hourly rate for hours worked above 40 hours.Enter Hours: 45Enter Rate: 10 Pay: 475.0475 = 40 * 10 + 5 * 15ExerciseRewrite your pay program using try and except so that your program handles non-numeric input gracef

15、ully.Enter Hours: 20 Enter Rate: nine Error, please enter numeric inputEnter Hours: forty Error, please enter numeric inputSummaryComparison operators = = !=Logical operators: and or notIndentationOne Way DecisionsTwo way Decisions if : and else :Nested DecisionsMultiway decisions using elifTry / Except to compensate for errorsShort circuit evaluations

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 教育/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号