面向对象特征

1.简述编写类和执行类中方法的流程
class 类名:
def method(selfself):
pass
A = 类名()
A.method()
二..简述面向对象三大特性?

封装: 把具有相同属性和功能的内容封装在一个对象中

继承: 子类可以自动拥有父类中除了私有属性外的其他所有内容

多态: 同一个对象.可以拥有多种形态.python原生自带多态性



# 3..将一下函数改成累的方式并调用:
# 列:
def func(a1):
print(a1)

class 类:
def func(self,a1):
print(a1)
A = 类()
A.func(123)

4.方法和函数的区别?
方法: 写在类中的,需要传递self
函数:孤立.不需要传递self


5.什么是构造方法?
def __init__(self):
方法体

构造方法是创建对象的时候自动调用的

6.面向对象中的self指的是什么?

self表示当前类的对象.
7.以下代码体现面向对象的什么特点?
封装
8.这个代码体现面向对象的什么特点?
封装

9.看代码写结果
class foo:
def func(self):
print("foo.func")

obj = foo()
result = obj.func()
print(result)


结果none


10.定义一个类,其中有计算周长和面积的方法(圆的半径通过参数传递到构造方法)
class Circle:
def __init__(self,r):
self.r = r
def zhouchang(self):
return2*3.14*self.r
def mianji(self):
return 3.14*self.r*self*r
c = Circle(5)
print(c.zhouchang())

11.面向对象中为什么要有继承.
为了扩展性
12.python多继承时,查找成员的顺序遵循什么规则?
从左到右 MRO = c3算法


13.看代码写结果
class Base1:
def f1(self):
print('base1,1')
def f2(self):
print('base1,f2')
def f3(self):
print('base2.f3')
self.f1()

class Base2:
def f1(self):
print('base2,f1')

class Foo(Base1, Base2):

def f0(self):
print("foo.f0")
self.f3()

f = Foo()
f.f0()
结果为: foo.f0
base2.f3
base1.1

15. 补充代码实现:
1. while循环输入用户名,密码,邮箱
2. 为每个用户创建一个对象,并添加到列表中
3.当列表中添加了3个对象后,跳出循环并以此循环打印所有用户的姓名和邮箱
如:我叫alex,邮箱是xxx@live.com
我叫oldboy,邮箱是old@live.com
...


class User:
def __init__(self, username, password, email):
self.username = username
self.password = password
self.email = email


user_list = []
for i in range(3):
user = input("请输入用户名:")
pwd = input("请输入密码:")
email = input("请输入邮箱:")
u = User(user, pwd, email)
user_list.append(u)
else:
for u in user_list:
print("我叫%s, 邮箱是:%s" % (u.username, u.email))



16.补充代码实现

class User:
def __init__(self, name, pwd):
self.name = name
self.pwd = pwd

class Account:#账户的意思
def __init__(self):
self.user_list = [] # 数据源


def login(self):#登录
print("欢迎来到登录环节")
username = input("请输入用户名: ")
password = input("请输入密码:")
for u in self.user_list:
if u.name == username and u.pwd == password:
print("登录成功")
return
else:
print("登录失败")

def register(self):
print("欢迎来到注册环节")
uname = input("请输入用户名")
pwd = input("请输入密码")

u = User(uname, pwd)
self.user_list.append(u)


def run(self):
while 1:
print("1. 注册")
print("2. 登录")
num = input("请输入你要执行的操作(Q退出):")
if num == "1":
self.register()# 注册的意思
elif num == "2":
self.login()
elif num.upper() == "Q":
print("退出")
break
else:
print("你是不是傻")

obj = Account()
obj.run()
posted @ 2018-09-26 16:43  若无过客丶何来人生  阅读(383)  评论(0编辑  收藏  举报