"try except 语句的执行流程如下:首先执行 try 中的代码块,如果执行过程中出现异常,系统会自动生成一个异常类型,并将该异常提交给 Python 解释器,此过程称为捕获异常。当Python 解释器收到异常对象时,会寻找能处理该异常对象的 except 块,如果找到合适的 except 块,则把该异常对象交给该 except 块处理,这个过程被称为处理异常。如果 Python 解释器找不到处理异常的 except 块,则程序运行终止,Python 解释器也将退出。<br>事实上,不管程序代码块是否处于 try 块中,甚至包括 except 块中的代码,只要执行该代码块时出现了异常,系统都会自动生成对应类型的异常。但是,如果此段程序没有用 try 包裹,又或者没有为该异常配置处理它的 except 块,则Python 解释器将无法处理,程序就会停止运行;反之,如果程序发生的异常经 try 捕获并由 except 处理完成,则程序可以继续执行。<br>举个例子:try: a = int(input(""输入被除数:b = int(input(""输入除数:c = a / b print(""您输入的两个数相除的结果是:"", c ) except (ValueError, ArithmeticError): print(""程序发生了数字格式异常、算术异常之一"") except : print(""未知异常"") print(""程序继续运行"")程序运行结果为:<br>输入被除数:a<br>程序发生了数字格式异常、算术异常之一<br>程序继续运行<br>上面程序中,第6行代码使用了(ValueError, ArithmeticError)来指定所捕获的异常类型,这就表明该 except 块可以同时捕获这 2 种类型的异常;第8行代码只有 except 关键字,并未指定具体要捕获的异常类型,这种省略异常类的 except 语句也是合法的,它表示可捕获所有类型的异常,一般会作为异常捕获的最后一个 except 块。<br>除此之外,由于 try 块中引发了异常,并被 except 块成功捕获,因此程序才可以继续执行,才有了“程序继续运行”的输出结果。<br>获取特定异常的有关信息<br>通过前面的学习,我们已经可以捕获程序中可能发生的异常,并对其进行处理。但是,由于一个 excep"
结合词义和例子(例子选的不是太好,后面会给出更明确的语境),我们可以抓住这2个关键词——concession和refutation。所以,nonetheless通常用于让步的语境,而on the contrary用于反驳的语境。<br>为了说明,我们举更“接地气”的例子吧。例如,“这个学生学习能力很强,但是她的独立生活能力一般。”这个时候,后半句就应该用nonetheless连接,即:…; nonetheless, she has poor life skills.(注意分号)解释:所谓让步,就是前个意思(句子)先承认好的,后面再说不好的,所以nonetheless适合。<br>再例如,“我以为他双十一买了很多东西,恰恰相反,他什么都没买。”这个时候,后半句就应该用on the contrary连接,即:…; on the contrary, he bought nothing. (注意分号)解释:所谓“反驳”,就是要对前个意思(句子)作出正误判断,所以on the contrary适合。<br>注意:however可以替换以上2个词,所以however的范围更广。举个例子:以下题目来自SAT文法OG练习题(前面部分的大意是“otter对kelp很重要”。):<br>请在评论区给出你的答案,欢迎讨论。<br>3. 查询工具<br>特点:实用,例句多(来源多为纽约时报,路透社等报刊),还可以“通关打怪”记单词。<br>特点:解决英语(还有其他语言)表达中各种“疑难杂症”,语言素材来源地道。例如上面的问题(by contrast VS on the contrary?等等),就可以找到很多问答。<br>总结<br>However不可以和nevertheless或者on the contrary随意互换。后面两个词分别强调让步和反驳之义。<br>往期文章:<br>1. 正反论点思考<br>2. 评分标准概述<br>3. 中式英语勘误<br>4. 托福真题回顾<br>5. “脱贫”中学表达<br>6. 写作考试“初心”<br>7. 备考的执行力<br>8.10月真题回顾<br>小套路<br>长按二维码关注公众号Freedom Writer(微信号:writingresources)。<br>在下文中回复你对于文中题目的想法,我一一回复。