A、在函数体,一个被声明为静态的变量在这一函数被调用过程中维持其值不变。其他的函数不能引用它。
B、在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所用函数访问,但不能被模块外其它函数访问。它是一个本地的全局变量。
C、在模块内,一个被声明为静态的函数只可被这一模块内的其它函数调用。那就是,这个函数被限制在声明它的模块的本地范围内作用。
D、以上都不是
A、重载函数
B、内联函数
C、递归函数
D、友元函数
A、被调用函数必须是已经存在的函数、库函数或用户已定义过的函数
B、没有头文件也可以对库函数进行调用
C、如果使用用户自定义的函数,还要在主调用函数中说明用户函数的返回值类型。
D、在主函数main()中可以调用其他函数,其他函数也可以相互调用
A、若只在主函数中对函数f进行说明,则只能在主函数中调用函数f
B、若在主函数前对函数f进行说明,则在主函数和其后的其它函数中都可以调用函数f
C、对于以上程序,编译时系统会提示出错信息:提示对对f函数重复说明
D、函数f无返回值,所以可用void将其类型定义为无值型
A.函数代码是可以重复使用的
B.每次使用函数需要提供相同的参数作为输人
C.函数通过函数名进行调用
D.函数是一段具有特定功能的语句组
华塑控股股份有限公司12月招聘面试题面试题面试官常问到的一些题目整理如下:问题 Q1:什么是Python中的迭代器?可用的回答 :在Python中,迭代器用于迭代一组元素,如列表之类的容器。问题 Q2:说一说redis-scrapy中redis的作用?可用的回答 : 它是将scrapy框架中Scheduler替换为redis数据库,实现队列管理共享。 优点: 可以充分利用多台机器的带宽; 可以充分利用多台机器的IP地址。 问题 Q3:是否使用过functools中的函数?其作用是什么?可用的回答 :python自带的 functools 模块提供了一些常用的高阶函数,也就是用于处理其它函数的特殊函数。换言之,就是能使用该模块对可调用对象进行处理。functools.cmp_to_key(func)functools.total_ordering(cls)functools.reduce(function, iterable, initializer)functools.partial(func, args, *keywords)functools.update_wrapper(wrapper, wrapped, assigned, updated)functools.wraps(wrapped, assigned, updated)问题 Q4:在Python中切片是什么?可用的回答 :从序列类型(如列表,元组,字符串等)中选择一系列项目的机制称为切片。问题 Q5:你常用的mysql引擎有哪些?各引擎间有什么区别?可用的回答 : 主要 MyISAM 与 InnoDB 两个引擎,其主要区别如下: 一、 InnoDB 支持事务,MyISAM 不支持,这一点是非常之重要。 事务是一种高级的处理方式,如在一些列增删改中只要哪个出错还可以回滚还原,而 MyISAM就不可以了; 二、 MyISAM 适合查询以及插入为主的应用,InnoDB 适合频繁修改以及涉及到安全性较高的应用; 三、 InnoDB 支持外键,MyISAM 不支持; 四、 MyISAM 是默认引擎,InnoDB 需要指定; 五、 InnoDB 不支持 FULLTEXT 类型的索引; 六、 InnoDB 中不保存表的行数,如 select count(*) from table 时,InnoDB; 需要扫描一遍整个表来计算有多少行,但是 MyISAM 只要简单的读出保存好的行数即可。 注意的是,当 count(*)语句包含 where 条件时 MyISAM 也需要扫描整个表; 七、 对于自增长的字段,InnoDB 中必须包含只有该字段的索引,但是在 MyISAM 表中可以和其他字段一起建立联合索引; 八、 清空整个表时,InnoDB 是一行一行的删除,效率非常慢。MyISAM 则会重建表; 九、 InnoDB 支持行锁(某些情况下还是锁整表,如 update table set a=1 where user like %lee% 问题 Q6:用尽量多的方法实现单例模式?可用的回答 : 一、模块单例 Python 的模块就是天然的单例模式,因为模块在第一次导入时,会生成.pyc文件,当第二次导入时,就会直接加载.pyc文件,而不会再次执行模块代码。 二、静态变量方法 先执行了类的_new_方法(我们没写时,默认调用object._new_),实例化对象; 然后再执行类的_init_方法,对这个对象进行初始化,所有我们可以基于这个,实现单例模式。 class Singleton(object): def _new_(cls,a): if not hasattr(cls, _instance): cls._instance = object._new_(cls) return cls._instance def _init_(self,a): self.a = a 问题 Q7:python提供的内置类型是什么?可用的回答 : 可变类型的内置类型: List Sets Dictionaries 不可变的内置类型: Strings Tuples Numbers 问题 Q8:列举面向对象中带双下划线的魔术方法可用的回答 : _doc_ 表示类的描述信息 _module_ 表示当前操作的对象在哪个模块 _class_ 表示当前操作的对象的类是什么 _init_ 构造方法,通过类创建对象时,自动触发执行 _new_负责创建一个类的对象 _del_ 析构方法,当对象在内存中被释放时,自动触发执行 _call_ 对象后面加括号,触发执行 _dict_ 类或对象中的所有成员 _str_如果一个类中定义了_str_方法,那么在打印 对象 时,默认输出该方法的返回 问题 Q9:大数据的文件读取?可用的回答 : 1. 利用生成器generator 2. 迭代器进行迭代遍历:for line in file 问题 Q10:遇到过得反爬虫策略以及解决方法?可用的回答 : 反爬虫策略: 1.通过headers反爬虫 2.基于用户行为的发爬虫(同一IP短时间内访问的频率,封IP) 3.动态网页反爬虫(通过ajax请求数据,或者通过JavaScript生成) 4.对部分数据进行加密处理的(数据是乱码) 解决方法: 1. 对于基本网页的抓取可以自定义headers,添加headers的数据 2. 使用多个代理ip进行抓取或者设置抓取的频率降低一些, 3. 动态网页的可以使用selenium + phantomjs 进行抓取 4.
若有以下程序#includevoidf(intn);main(){voidf(intn);f(5);}voidf(intn){printf(“%d\n“,n);}则以下叙述中不正确的是()
A、若只在主函数中对函数f进行说明,则只能在主函数中正确调用函数f
B、若在主函数前对函数f进行说明,则在主函数和其后的其它函数中都可以正确调用函数f
C、对于以上程序,编译时系统会提示出错信息:提示对对f函数重复说明
D、函数f无返回值,所以可用void将其类型定义为无值型
此题为判断题(对,错)。
若在主函数前对函数f说明,则在主函数和其后的其它函数中都可正确调用函数f。
此题为判断题(对,错)。
在C程序中有如下语句:char *func(intx,int y); 它是( )。
A.对函数func的定义。
B.对函数func的调用。
C.对函数func的原型说明。
D.不合法的
下列关于构造函数的叙述错误的是( )。
A.构造函数的作用就是在对象被创建时利用特定的值构造对象
B.构造函数在被创建的时候由系统自动调用
C.构造函数可以被重载
D.构造函数可以与类名不一样