上海海得控制系统股份有限公司12月招聘面试题128道20201216

对异常处理语句try-catch-finally,下面哪个说法正确()

A、如果有多个catch语句,对所有的catch语句都会执行一次

B、如果有多个catch语句,对每个符合条件的catch语句都会执行一次

C、多个catch的情况下,异常类的排列顺序应该是父类在前,子类在后

D.一般情况下,finally部分都会被执行一次


答案:D 

解析:

try语句 执行你所定义的或者你所捕获到的错误测试的代码块

catch :定义当try 代码块发生错误所需要执行的代码块

finally:无论是否有异常都会执行



在try...except...else结构中,如果try块的语句引发了异常则会执行else块中的代码。

此题为判断题(对,错)。


正确答案:×


下列关于try和catch语句的描述中,错误的是______。

A.不同的catch代码段是不同的作用域,但是可以访问相互之间定义的局部变量

B.如果没有异常产生,则所有的catch代码段都被略过不执行

C.异常总是由距离产生异常最近的匹配catch代码段处理

D.try代码段后跟一个或多个catch代码段


正确答案:A


Foxbase中,关于条件分支语句说法正确的是()。

  • A、最多只能有2重嵌套
  • B、如果条件为真,则执行ELSE与ENDIF之间的语句
  • C、如果条件为假,则执行IF与ELSE之间的语句
  • D、如果条件为假,则执行ELSE与ENDIF之间的语句

正确答案:D


在try程序块中发生了异常,其后如果有多个catch参数类与之匹配,会执行那个catch块中的异常处理程序。


正确答案:当try语句块中的代码执行时发生异常,程序的正常运行便中断,并抛出异常对象,然后在try块后面的各个catch()中查找与异常对象相匹配的异常类,当找到第一个与之相匹配的参数类时,就执行包含这一参数类的catch语句块中的代码。


上海海得控制系统股份有限公司12月招聘面试题面试题面试官常问到的一些题目整理如下:问题 Q1:什么是python模块?Python中有哪些常用的内置模块?可用的回答 :Python模块是包含Python代码的.py文件。此代码可以是函数类或变量。一些常用的内置模块包括:sys、math、os、re、random、time,datatime、json等问题 Q2:介绍一下except的用法和作用?可用的回答 : tryexceptexceptelsefinally 执行try下的语句,如果引发异常,则执行过程会跳到except语句。 对每个except分支顺序尝试执行,如果引发的异常与except中的异常组匹配,执行相应的语句。 如果所有的except都不匹配,则异常会传递到下一个调用本代码的最高层try代码中。 try下的语句正常执行,则执行else块代码。如果发生异常,就不会执行 如果存在finally语句,最后总是会执行。 问题 Q3:如何删除python数组的值?可用的回答 :可以使用pop()或remove()方法删除数组元素。这两个函数之间的区别在于前者返回已删除的值,而后者则不返回。问题 Q4:scrapy和scrapy-redis的区别?可用的回答 : scrapy是一个爬虫通用框架,但不支持分布式,scrapy-redis是为了更方便的实现scrapy分布式爬虫,而提供了一些以redis为基础的组件 为什么会选择redis数据库?因为redis支持主从同步,而且数据都是缓存在内存中,所以基于redis的分布式爬虫,对请求和数据的高频读取效率非常高 什么是主从同步?在Redis中,用户可以通过执行SLAVEOF命令或者设置slaveof选项, 让一个服务器去复制(replicate)另一个服务器,我们称呼被复制的服务器为主服务器(master),而对主服务器进行复制的服务器则被称为从服务器(slave), 当客户端向从服务器发送SLAVEOF命令,要求从服务器复制主服务器时,从服务器首先需要执行同步操作,也即是,将从服务器的数据库状态更新至主服务器当前所处的数据库状态 问题 Q5:ngnix的正向代理与反向代理?可用的回答 : 正向代理 是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容, 客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。 客户端必须要进行一些特别的设置才能使用正向代理。 反向代理正好相反,对于客户端而言它就像是原始服务器,并且客户端不需要进行任何特别的设置。 客户端向反向代理的命名空间中的内容发送普通请求,接着反向代理将判断向何处(原始服务器)转交请求, 并将获得的内容返回给客户端,就像这些内容原本就是它自己的一样。 问题 Q6:Python中的命名空间是什么?可用的回答 : 在Python中,引入的每个名称都有一个存在的地方,可以被连接起来。这称为命名空间。 它就像一个框,其中变量名称映射到放置的对象。每当搜索到变量时,将搜索此框以获取相应的对象。 问题 Q7:python提供的内置类型是什么?可用的回答 : 可变类型的内置类型: List Sets Dictionaries 不可变的内置类型: Strings Tuples Numbers 问题 Q8:、isinstance作用以及应用场景?可用的回答 : isinstance(obj, cls) 检查一个obj是否是cls的一个对象 问题 Q9:常见的HTTP方法有哪些?可用的回答 : GET:请求指定的页面信息,返回实体主体; HEAD:类似于get请求,只不过返回的响应中没有具体的内容,用于捕获报头; POST:向指定资源提交数据进行处理请求(比如表单提交或者上传文件),。数据被包含在请求体中。 PUT:从客户端向服务端传送数据取代指定的文档的内容; DELETE:请求删除指定的页面; CONNNECT:HTTP1.1协议中预留给能够将连接方式改为管道方式的代理服务器; OPTIONS:允许客户端查看服务器的性能; TRACE:回显服务器的请求,主要用于测试或者诊断。 问题 Q10:django 中当一个用户登录 A 应用服务器(进入登录状态),然后下次请求被 nginx 代理到 B 应用服务器会出现什么影响?可用的回答 :如果用户在A应用服务器登陆的session数据没有共享到B应用服务器,那么之前的登录状态就没有了。算法题面试官常问到的一些算法题目整理如下(大概率会机考):算题题 A1:最长的回文子字符串题目描述如下:Given a string s, find the longest palindromic substring in s. You may assume that the maximum length of s is 1000.Example 1:Input: babadOutput: babNote: aba is also a valid answer.Example 2:Input: cbbdOutput: bb最长的回文子串。1. 本来想用正则的,发现正则不重复搜。sorted(re.findall(r(?P.1).*(?P=letter), abacab), key=lambda x: len(x0)unpassed, wrong answer.2. 回文串的定义是,翻转过来也相同,也就是从中间分开,从各自的中间开始走,到各自的头相同就对了。思路: cbbd 遍历一遍,找到所有字符的位置,放到hash中。 c: 0, b: 1, 2, d: 3 若有一个大于len() 1的,就开始判断: 1. 判断从大到小。 1.1 制造从大到小的字典2: (1, 3), (2, 4) 可以用binations() 。 若全不大于,返回s0.效率有点低.大概率 TLE.WTF, passed,而且还 beat 33%!可做参考的解答如下:class Solution(object): # beat 33% def longestPalindrome(self, s): if len(s) = 1: return s

关于finally块中的代码描述正确的是()

  • A、finally块中的代码总是被执行的
  • B、如果try块后没有catch块,finally块中的代码才会执行
  • C、异常发生时才被执行
  • D、异常没有发生时才被执行

正确答案:A


在Java的异常处理语句try-catch-final中,以下描述不正确的是()。

  • A、try后面是可能产生异常的代码,catch后面是捕获到某种异常对象时进行处理的代码,final后面是没有捕获到异常时要执行的代码
  • B、try后面是可能产生异常的代码,catch后面是捕获到某种异常对象时进行处理的代码,final后面是无论是否捕获到异常都必须执行的代码
  • C、catch语句和final语句都可以缺省
  • D、catch语句用来处理程序运行时的非致命性错误,而final语句用来处理程序运行时的致命性错误
  • E、当程序运行时抛出的异常是cathe语句中异常的子类,异常也会被捕捉执行相应的catch语句

正确答案:A,C,D


下列关于抛出异常的描述中,错误的一项是()。

  • A、异常可以由try代码段中的语句抛出
  • B、异常可以从被try代码段中调用的方法中抛出
  • C、异常的抛出并不影响代码段的执行顺序
  • D、异常还可能产生于数组下标越界及Java虚拟机内部的错误等

正确答案:C


下面的异常处理说明正确的是()

  • A、try块只能使用一个catch子句
  • B、try块必须同时与catch子句和finally子句一起使用
  • C、try块不能单独使用
  • D、try块中如果执行了return语句,则其finally子句不能执行

正确答案:C


在finally代码块中的代码,()。

  • A、在任何错误处理代码之前执行
  • B、不执行,除非在前面的try块中产生异常
  • C、不能保证在任何确定的时间内执行,但是将会优先于“碎片收集”被JVM调用
  • D、保证执行,无论try块中是否产生异常

正确答案:D

更多 “上海海得控制系统股份有限公司12月招聘面试题128道20201216” 相关考题
考题 finally块中的代码将()A、总是被执行B、如果try块后面没有catch块时,finally块中的代码才会执行C、异常发生时才被执行D、异常没有发生时才执行正确答案:A

考题 判断题由于异常处理结构try...except...finally...中finally里的语句块总是被执行的,所以把关闭文件的代码放到finally块里肯定是万无一失,一定能保证文件被正确关闭并且不会引发任何异常。A 对B 错正确答案:对解析:暂无解析

考题 带有else子句的异常处理结构,如果不发生异常则执行else子句中的代码。正确答案:正确

考题 判断题在try...except...else结构中,如果try块的语句引发了异常则会执行else块中的代码。A 对B 错正确答案:错解析:暂无解析

考题 问答题在try程序块中发生了异常,其后如果有多个catch参数类与之匹配,会执行那个catch块中的异常处理程序。正确答案:当try语句块中的代码执行时发生异常,程序的正常运行便中断,并抛出异常对象,然后在try块后面的各个catch()中查找与异常对象相匹配的异常类,当找到第一个与之相匹配的参数类时,就执行包含这一参数类的catch语句块中的代码。解析:暂无解析

考题 由于异常处理结构try...except...finally...中finally里的语句块总是被执行的,所以把关闭文件的代码放到finally块里肯定是万无一失,一定能保证文件被正确关闭并且不会引发任何异常。正确答案:错误

考题 判断题带有else子句的异常处理结构,如果不发生异常则执行else子句中的代码。A 对B 错正确答案:对解析:暂无解析

考题 在下面的代码中,continue语句的作用时() for(int i=0;iif(objArray[i]!=5)        continue;  objArray[i]:=100;}  A、跳过if程序块中congtinue下面的语句,执行if块外面的语句B、跳过整个函数中下面所有的语句,跳出整个函数C、跳过for循环中continue下面的语句,直接开始新的循环D、如果if程序块中有else块,则跳过else块,执行下面的语句正确答案:C

考题 问答题假设下列try-catch语句块中的第2个语句s2产生一个异常,试回答下述问题: ⑴语句s3会执行吗?  ⑵如果catch捕获到异常,语句s4会执行吗? ⑶如果异常未被捕获,语句s4会执行吗?正确答案:若try-catch语句块中的第2个语句s2产生一个异常,⑴语句s3不会执行,⑵如果catch捕获到异常,异常处理后,会继续执行语句s4,⑶如果异常未被捕获,则程序终止运行,语句s4也不会执行。解析:暂无解析

考题 什么时候会执行try-except-else的else部分()A、总是B、当发生异常时C、没有异常发生D、当包含块之外执行发生异常时正确答案:C