python面试题

一、奥卡云
python相关题目:

1、python迭代器

迭代器是可以记住的遍历的位置的对象;迭代器从第一个元素开始访问,只能往前,不能后退,迭代器的两个基本方法:next(),iter();迭代器是有惰性的,只有在需要返回下一个数据流之前才会计算。当数据流大时,使用迭代器十分有利,高效且节省内存。字符串、列表、元组可用于创建迭代器;

3、装饰器(修改其他函数的功能的函数)

装饰器的作用就是用一个新函数封装旧函数(是旧函数代码不变的情况下增加功能)然后会返回一个新函数,新函数就叫做装饰器,一般为了简化装饰器会用语法糖@新函数来简化

可以动态的修改函数(或类的)功能的函数就是装饰器。本质上,它是一个高阶函数,以被装饰的函数(比如上面的hello)为参数,并返回一个包装后的函数(比如上面的wrapped)给被修饰函数(hello)。

confest.py中使用了如下装饰器

@pytest.fixture(scope='class')

进行用例执行前的预操作:登录网页、刷新网页

4、read、readline、 readlines区别:read 读取整个文件,readline 读取下一行,readlines 读取整个文件到一个迭代器以供遍历(读取到一个list中,以供使用,比较方便)

(1)可指定读取模式('r')、写入模式('w')、附加模式('a')或让你能够读取和写入文件的模式('r+')。如果你省略了模式实参,Python将以默认的只读模式打开文件。

(2)写入文件:W:文件已存在,会先清空原内容,再写入;python只能写入字符串格式的,要想写入整数,必须先将整数使用函数str()转换为字符串格式

(3)附加:a+

如果你要给文件添加内容,而不是覆盖原有的内容,可以附加模式打开文件。你以附加模式

打开文件时,Python不会在返回文件对象前清空文件,而你写入到文件的行都将添加到文件末尾。

如果指定的文件不存在,Python将为你创建一个空文件。

5.orcal:数据库测试环境的搭建

锁类型:

(1)按用户与系统划分:自动锁(当进行一项数据库操作时,缺省情况下,系统自动为此数据库操作获得所有有必要的锁)、显示锁(某些情况下,需要用户显示的锁定数据库操作要用到的数据,才能使数据库操作执行得更好,显示锁是用户为数据库对象设定的。)

(2)按锁级别划分:共享锁(共享锁使一个事务对特定数据库资源进行共享访问——另一事务也可对此资源进行访问或获得相同共享锁。共享锁为事务提供高并发性,但如拙劣的事务设计+共享锁容易造成死锁或数据更新丢失。)、排它锁(事务设置排它锁后,该事务单独获得此资源,另一事务不能在此事务提交之前获得相同对象的共享锁或排它锁。)

二、润和软件

1、深拷贝和浅拷贝的区别:

深拷贝会拷贝父子对象,浅拷贝只拷贝父,子指向同一个地址,修改原来的子,拷贝后的也同步修改;

2、linux shell命令操作::

(1)自启动命令:chmod 修改用户权限,chkconfig on重启服务

(2)查询进程命令:ps -aux显示所有用户的进程

(3)查看服务器状态:service --status-all

(4)解压命令:tar备份文件,tar -czvf压缩文件、tar -zxvf,   unzip解压命令

三、继承、重载

子使用父的属性,用继承

父子有同名方法,子使用自己的方法,使用重写

父子都有同样的属性,子想使用自己的属性,使用super

四、广联达

BS:B/S是Brower/Server的缩写,客户机上只要安装一个浏览器,如Netscape Navigator或Internet Explorer,服务器安装oracle或SQL Server通过等数据库。在这种结构下,用户界面完全通过WWW浏览器实现,一部分事务逻辑在前端实现。但主要事务逻辑在服务器端实现,浏览器通过Web Server同数据库进行数据交互。

CS:C/S是Client/Server的缩写,服务器通常采用高性能的PC、工作站或小型机,并采用大数据库系统,如Oracle、Sybase、Informix或SQLServer。客户端需要安装专用的客户端软件。

区别:Client/Server是建立在局域网的基础上的。Browser/Server是建立在广域网的基础上的。

五.

1.序列化/反序列化

必须把数据额转换为字节序列,输出到文件,这就是序列化,反之,从文件的字节 序列恢复到内存中,就是反序列化

你可能感兴趣的:(python面试题)