今天去面试数据分析师,遇见的是本科北交大硕士中科院学工业工程的同学。真的是压力山大。
面试被问到了SQL。最近都不要投简历关注实习了,先充电,学完Python再学SQL。
今天做第十一章类和对象的习题
0.对象中的属性和方法,在编程中实际是什么?
变量属性,函数方法
1.类和对象是什么关系?
对象是类的实例化,类是抽象的,对象是具体的
2.如果我们定义了一个猫类,那你能想象出“猫”类实例化的对象有哪些?
叮当猫,咖啡猫等
3.类的定义有时候或许不那么“拟物”,有时候会抽象一些,例如我们定义一个矩阵类,那你会为此添加哪些属性和方法?
属性:长和宽垂直,长和宽是直线
方法:计算周长,面积
4.类的属性定义应该尽可能抽象还是尽可能具体?
应该尽可能抽象
5.请用一句话概括面向对象的几个特征
封装:对外部隐藏对象的工作细节
继承:子类可以共享父类之间数据和方法的机制
多态:可以对不同类的对象调用相同的方法,产生不同的结果
6.函数和方法有什么区别
方法和函数几乎是一样的,但是方法默认有一个self参数
0.按照以下提示尝试定义一个Person类并生成实例对象
属性:姓名(默认小甲鱼)
方法:打印姓名
class Person:
name = "小甲鱼"
def printName(self):
print(self.name)
>>> tt=Person()
>>> tt.name
'小甲鱼'
1.按照以下提示尝试定义一个矩形类并生成实例对象
属性:长和宽
方法:设置长和宽 setRect(self) 获得长和宽 grtRect(self) 获得面积 getArea(self)
class Rect():
length = 5
width = 4
def setRect(self):
print("请输入长和宽")
self.length = float(input("长:"))
self.width = float(input("宽:"))
def getArea(self):
return self.length*self.width
第37课
2.self 参数的作用是什么?
绑定方法,据说有了这个参数,Python再也不会傻傻分不清是哪个对象在调用方法了,可以认为方法中的self其实就是实例对象的唯一标志
3.类在实例化后哪个方法会被自动调用
__init__会被自动调用
4.请解释下边代码报错的原因: