IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> python面向对象 -> 正文阅读

[Python知识库]python面向对象

推导式 (对前一章的推导式的补充)

字典推导式

{out_exp_key:out_exp_value for out_exp in input_list}

?li = ['age','name','gender']
dic = {i:li.index(i) for i in li} # i 是值还是索引?i 是值
print(dic) # 可以形成字典形式
for i in li:
    print(li.index(i)) #输出索引值

集合推导式

{out_exp_res for out_exp in input_set}

#集合:无序,去重
#生成10个1-100的元素,进行去重
import random #随机模块
for i in range(10):#产生0-9整数序列(10个)
    print(random.randint(1,100))#[1,100]随便生成一个整数
s={random.randint(1,100) for i in range(10)}
print(s)

注意:

~没有元组推导式,(i for i in range(10)返回的是generator object)

面向对象编程

介绍:

面向对象编程:objec oriented programming 简称:oop,是一种程序设计思想。

需要注意点是,与之相对应的是面向过程编程思想。实际上,能够使用面向对象编程思想实现的程序,也都能通过面向过程完成。只是看哪种思想更适合当前开发需求。

面向对象概念及术语

类:对象,实例化,实例变量,类变量

方法:静态方法,类方法,方法重写,数据成员

封装,继承,多态

类的构成

类由三个部分构成

~类的名称:类名

~类的属性:一组数据

~类的方法:允许对类进行操作的方法

类的定义

python使用class关键字来定义类,其基本结构如下:

class MyClass:#class 定义类的关键字

? ? pass

注意:类名通常采用这种驼峰式的命名方式,尽量让字面意思体现出来类的作用。

小练习:

~创建类:学生类

~创建对象:张三

~在类中定义方法输出:张三学习python

class Students:
    def study_python(self):
        print('zhangsan学习python')

    def study_C(self):
        print('zhangsan学习C')
    def study_java(self):
        print('zhangsan学习java')
zs = Students()#创建对象,对象赋值给了zs
zs.study_python()# zhangsan学习python
zs.study_C()# zhangsan学习C
zs.study_java()# zhangsan学习java

self参数

在类当中定义方法时,会发现系统帮我们自动创建了self参数,并且在调用对象的方法时,也无需传入self参数。那这个self是什么?

self的概念

~self本身就是形参

~self就是对象本身

class LogicStudents:
    def study_python(self):
        print(self.name,self.age,self.gender)
        print(self)# self代表的是对象,当创建的对象是谁,self就是谁
zs= LogicStudents()
zs.name = '张三'
zs.age = 20
zs.gender = '男'
zs.study_python()
print('-'*80)
ls= LogicStudents()
ls.name = '李四'
ls.age = 21
ls.gender = '男'
ls.study_python()

__init__()方法

__init__()方法称为初始化方法,也可以称为构造方法。在创建对象时,会自动执行该方法,为对象的属性设置初始值。

class Student:
    def __init__(self,name,age):
        self.name = name
        self.age = age
    def stu_info(self):
        print(self.name,self.age)
zs= Student('zhangsan',19)
# print('--2--')
zs.stu_info()

__str__()方法

如果在开发中,希望打印输出对象变量是,能够打印自定义内容。就可以使用__str__()方法,将自定义内容通过return关键字返回。

class Student:
    def __init__(self):#,name,age
        self.name = 'zhangsan'
        self.age = 19
    def __str__(self):#返回值必须是字符串
        # return self.name,self.age 返回元组类型,报错
        return f'{self.name},{self.age}'
zs= Student()
print(zs)
  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-02-06 13:47:28  更:2022-02-06 13:48:21 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 0:54:29-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码