基础题
- 定义一个变量有三个特性分别为?等号比较的是什么?is比较的是什么?
使用链式赋值的方式将10赋值给变量x、y、z
有一个工资列表[3.1,2.1,4.3,2.2,1.3,9.3],请取出前两个月的工资,分别赋值给两个变量名,用一行代码实现
可变的数据类型有哪些,不可变的数据类型有哪些
容器类型有?序列类型有?
请说明python2与python3中的默认编码是什么?
如何保证程序不出现乱码问题?
unicode,utf-8,gbk,ascii用个几个字节表示英文,用几个字节表示中文
在python3中的str是什么编码的,如何把python3中的str转成utf-8格式的bytes
在python3中如何把utf-8格式的bytes解码成str
什么是名称空间?名称空间的加载顺序是?查找名字的顺序是?
多重继承的执行顺序,请解答以下输出结果是什么?并解释。
class A(object): def __init__(self): print('A') super(A, self).__init__() class B(object): def __init__(self): print('B') super(B, self).__init__() class C(A): def __init__(self): print('C') super(C, self).__init__() class D(A): def __init__(self): print('D') super(D, self).__init__() class E(B, C): def __init__(self): print('E') super(E, self).__init__() class F(C, B, D): def __init__(self): print('F') super(F, self).__init__() class G(D, B): def __init__(self): print('G') super(G, self).__init__() if __name__ == '__main__': g = G() f = F()
什么是可迭代对象,什么是迭代器对象?
迭代器对象有什么优点
简述for循环的原理
简述面向过程编程
比较两个值得大小,获得较大的一个值,用一行代码实现
- 使用列表生成式或生成器表达式解决下列问题
1、将names=[‘kevin’,'jack','tony','tank']中的名字全部变大写
2、将names=[‘kevin’,’ 'jack_sb’, 'tank', 'tony']中以sb结尾的名字过滤掉,然后保存剩下的名字长度)
3、求文件a.txt中最长的行的长度(长度按字符个数算,需要使用max函数)
4、求文件a.txt中总共包含的字符个数?
5、思考
with open('a.txt') as f: g=(len(line) for line in f) print(sum(g)) #为何报错?
6、文件shopping.txt内容如下
mac,20000,3
lenovo,3000,10
tesla,1000000,10
chicken,200,1
求总共花了多少钱?
打印出所有商品的信息,格式为[{'name':'xxx','price':333,'count':3},...]
求单价大于10000的商品信息,格式同上
- 有一个存放员工名与其月薪的字典如下
salaries={ 'kevin':3000, 'jack':100000000, 'tony':10000, 'tank':2000}
请用一行代码实现
1、求薪资最高的那名员工姓名
2、将字典映射成一个列表,[(‘kevin', 36000), ('jack', 1200000000), ('tony', 120000), ('tank’, 24000)],列表内每一个元素是员工姓名、员工的年薪
3、过滤出薪资大于10000的员工姓名
- 简述yield与return的相同点与不同点
下面这段代码的输出结果将是什么?请解释。
class Parent(object): x = 1 class Child1(Parent): pass class Child2(Parent): pass print(Parent.x, Child1.x, Child2.x) Child1.x = 2 print(Parent.x, Child1.x, Child2.x) Parent.x = 3 print(Parent.x, Child1.x, Child2.x)
类的属性和对象的属性有什么区别?
什么是新式类,什么是经典类,二者有什么区别?什么是深度优先,什么是广度优先?
什么是绑定到对象的方法,、如何定义,如何调用,给谁用?有什么特性
- 有字符串'email1:378533872@qq.com email2:333312312@163.com eamil3:jacksb123@gmail.com',匹配出所有的邮箱地址:['378533872@qq.com', '333312312@163.com', 'alexsb123@gmail.com']
综合题
考试内容:从零开始编写ATM项目所有功能(面相过程版本和面相对象版本人选其一)
- 新建项目,整个编程期间,pycharm窗口最大化,不允许切换窗口,再次强调!!!考试期间不允许切换窗口,不允许窗口最小化!!!!
- 项目中用到的变量名,函数名,文件名,模块名都需要跟老师的不一样,可以考虑加入自己的名字作为前缀(非常丑陋,但为了防止作弊)
- 所有功能需要正常运行