当前位置: 首页 > news >正文

python面向对象基础知识_python面向对象的基础知识

python面向对象的基础知识

发布时间:2020-06-16 12:01:27

来源:亿速云

阅读:68

作者:鸽子

面向对象#类

class bar:

def foo(self,arg):

print(self.name,self.age,self.gender,arg)

z = bar()

#封装公有部分到内存里

z.name = 'hao'

z.age = 11

z.gender = '男'

z.foo(666)

z1 = bar()

z.name = 'xue'

z.age= 18

z.gender = '女'

z.foo('hahaha')

'''

'''

class bar:

def __init__(self,name,age):

self.name = name

self.age = age

def show(self):

print('%s:%s' %(self.name,self.age))

z = bar('hao',11)

z.show()

z1 =bar('haha',33)

z1.show()

#输出结果:

hao:11

haha:33

'''#继承

class F:

def f1(self):

print('F.f1')

def f2(self):

print('F.f2')

class s(F):

def s1(self):

print('s.s1')

def f2(self):

super(s,self).f2()  #执行父类(基类)中的方法

print('s.f2')

h = s()

h.s1()

h.f1()

#输出结果: s.s1     F.f1

h.f2()

#结果

F.f2

s.f2# class foo:

#     def __init__(self):

#         self.name = "a"

#

#     def bar(self):

#         print('bar')

#

#     @property

#     def per(self):

#         return 1

#     @per.setter

#     def per(self,var):

#         print(var)

#

# obj = foo()

#

# r = obj.per

# # print(r)

#

# obj.per = 123

class pagenation:

def __init__(self,current_page):

try:

p = int(current_page)

except enumerate as e:

p = 1

self.page = p

@property

def start(self):

val = (self.page -1) * 10

return val

@property

def end(self):

val = self.page * 10

return val

li = []

for i in range(100000):

li.append(i)

while True:

p = input('请输入你的页码:')

obj = pagenation(p)

print(li[obj.start:obj.end])

输出结果

0db7243c936b8f8dbad48e7f8d3c14f3.png

成员修饰符

'''class F:

def __init__(self):

self.ag =12

self.__ag = 34

class S(F):

def __init__(self,name):

self.name = name

self.__age =18

super(S,self).__init__()

def show(self):

print(self.name)

print(self.__age)         #间接调用私有字段

print(self.ag)

# print(self.__ag)        #无法继承父类的私有字段

obj = S('hao')

obj.show()

'''

'''

class Foo:

def __init__(self):

print('hah')

def __call__(self, *args, **kwargs):

print('123')

def __int__(self):

return 111

def __str__(self):

return 'hao'

Foo()()     #调用__call__方法

a = int(Foo())      #调用__int__方法

print(a)

b = str(Foo())      #调用__str__方法

print(b)

'''

# class Foo:

#     def __init__(self,name,age):

#         self.name = name

#         self.age = age

#         self.n = 123

# obj = Foo('hao',18)

#

# r = obj.__dict__        #结果:{'name': 'hao', 'age': 18, 'n': 123}

# print(r)

'''

class Foo:

def __init__(self,name,age):

self.name = name

self.age = age

self.n = 123

def __getitem__(self, item):

return item+10

def __setitem__(self, key, value):

print(key,value)

def __delitem__(self, key):

print(key)

obj = Foo('hao',18)

r = obj[8]  #r=item

print(r)        #调用__getitem方法,结果:18

obj[10]=888     #调用__setitem方法,结果:10,888

del obj[999]    #调用__delitem方法,结果:999

'''

# class Foo:

#

#     def __iter__(self):

#

#         return iter([11,22,33,44])

# obj = Foo()

#

# for i in obj:

#     print(i)

#输出结果

# 11

# 22

# 33

# 44

相关文章:

  • mysql递归查询及节点层级_Mysql中的递归层次查询(父节点下的所有节点)
  • /usr/lib/mysql/plugin权限_给数据库增加密码策略遇到的权限问题
  • datax把text转mysql_使用DataX实现mysql数据迁移
  • haccp体系的参照标准是_食品安全标准与ISO、GMP、HACCP等体系之间的相互关系
  • mac mysql 多实例_Mac上mysql多端口实例配置并设置开机自动启动
  • mysql 主要有哪些函数_mysql中有哪些函数
  • mysql索引失效解决6_简单介绍MySQL索引失效的几种情况
  • java 获取方法的参数_Java 8中如何获取参数名称的方法示例
  • java gui程序运行_13.JAVA之GUI编程将程序打包jar
  • java输入输出学生成绩_java从键盘输入学生成绩,找出最高分,并输出学生成绩等级。...
  • java $ 解析api_Java版抖音解析接口
  • java 10的 6次方_【Java】 剑指offer(15) 数值的整数次方
  • java 方法 返回值 int_关于java字节流类的read()方法返回值为int的思考
  • java 迭代器复制_java设计模式之迭代器模式
  • java取文件类型_java如何通过文件描述符获取文件类型
  • 实现windows 窗体的自己画,网上摘抄的,学习了
  • 《Java8实战》-第四章读书笔记(引入流Stream)
  • 【108天】Java——《Head First Java》笔记(第1-4章)
  • 3.7、@ResponseBody 和 @RestController
  • Octave 入门
  • python_bomb----数据类型总结
  • Traffic-Sign Detection and Classification in the Wild 论文笔记
  • vue-cli3搭建项目
  • 当SetTimeout遇到了字符串
  • 给新手的新浪微博 SDK 集成教程【一】
  • 前端知识点整理(待续)
  • 数组的操作
  • 微信小程序设置上一页数据
  • 《天龙八部3D》Unity技术方案揭秘
  • MyCAT水平分库
  • ​LeetCode解法汇总2304. 网格中的最小路径代价
  • ​queue --- 一个同步的队列类​
  • ​卜东波研究员:高观点下的少儿计算思维
  • #使用清华镜像源 安装/更新 指定版本tensorflow
  • #微信小程序(布局、渲染层基础知识)
  • (14)目标检测_SSD训练代码基于pytorch搭建代码
  • (2015)JS ES6 必知的十个 特性
  • (22)C#传智:复习,多态虚方法抽象类接口,静态类,String与StringBuilder,集合泛型List与Dictionary,文件类,结构与类的区别
  • (libusb) usb口自动刷新
  • (Python第六天)文件处理
  • (附源码)python旅游推荐系统 毕业设计 250623
  • (附源码)springboot家庭财务分析系统 毕业设计641323
  • (十三)Maven插件解析运行机制
  • (四)linux文件内容查看
  • (转)程序员疫苗:代码注入
  • (转)我也是一只IT小小鸟
  • *(长期更新)软考网络工程师学习笔记——Section 22 无线局域网
  • .“空心村”成因分析及解决对策122344
  • .bat批处理(五):遍历指定目录下资源文件并更新
  • .class文件转换.java_从一个class文件深入理解Java字节码结构
  • .form文件_一篇文章学会文件上传
  • .java 9 找不到符号_java找不到符号
  • .NET 使用 ILMerge 合并多个程序集,避免引入额外的依赖
  • .NetCore项目nginx发布
  • .NET下ASPX编程的几个小问题