python--类与面向对象-2

news2024/11/18 11:36:41

一、对象在文本中的输出

class Person:

        def __init__(self,name,agg,live_value,money):

                self.name=name

                self.agg=agg

                self.live_value=live_value

                self.money=money

        def describe():       

                print('%s的攻击力是%s'%(self.name,self.agg))

p=Person('bob',10,10000,100)

b=Person('tony',10,10000,100)

print(p.describe())

print(b.describe())

 %s可以将要输出的内容转化为字符串形式输出,而后面的属性就是我们要输出的内容,也是对位输出

二、init函数详解

class Person:

        def __init__(self,name,agg,live_value,money):

                self.name=name

                self.agg=agg

                self.live_value=live_value

                self.money=money

        

        def describe():       

                print('%s的攻击力是%s'%(self.name,self.agg))

p=Person('bob',10,10000,100)

b=Person('tony',10,10000,100)

print(p.describe())

print(b.describe())

                

        这个函数可以叫做__init__方法,也称之为构造方法。

        __init__函数是面向对象编程中的特殊方法,当创建一个类的实例时它可以自动调用。

自动调用的意思解释:

class Person:

        def __init__(self,name,agg,live_value,money):

                self.name=name

                self.agg=agg

                self.live_value=live_value

                self.money=money

        

        def describe():       

                print('%s的攻击力是%s'%(self.name,self.agg))

p=Person('bob',10,10000,100)

b=Person('tony',10,10000,100)

print(p.describe())

print(b.describe())

                

看上面这个函数,大家知道Person这个类里面有两个函数,在上一章讲过这一个类就是一个个体,那么我们要调用这个个体里面的函数就需要有一个中介,那么这个中介就是self,我们通过面向对象编程的self实现自动回调,才能赋予这个对象使用这个类里面的属性的能力,相当于我赋予我这个对象能够使用武器的能力,当然这个解释只是为了方便理解我把它抽象为一个过程。事实上这个self是必不可少的,大家记住就行了,对于这个self我不做过多解释。如果想更加了解__init__函数,详情参考: 

        【知识点】python的__init__详解_python __init__-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/weixin_39888010/article/details/129012009?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522171033034016800182783803%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=171033034016800182783803&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduend~default-2-129012009-null-null.142%5Ev99%5Epc_search_result_base5&utm_term=python%E4%B8%ADinit%E5%87%BD%E6%95%B0%E8%AF%A6%E8%A7%A3&spm=1018.2226.3001.4187

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1514978.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python之装饰器

一:作用 在函数名以及函数体不改变的前提下,给一个函数附加一些额外代码 二、语法 三、举例子 两个功能函数 test1, test2 遵循 “开放封闭原则”, 已经写好的代码,尽可能不要修改。 如果想要新增功能,…

YOLOv5目标检测学习(5):源码解析之:推理部分dectet.py

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、导入相关包与路径、模块配置1.1 导入相关的python包1.2 获取当前文件的相对路径1.3 加载自定义模块1.4 总结 二、执行主体的main函数所以执行推理代码&…

Linux中YUM仓库的配置

Linux软件包的管理 YUM仓库是什么YUM的常用命令修改YUM源其实CentOS7已经对YUM做了优化 YUM仓库是什么 之前传统RPM的管理方式 可以简单理解为写Java的时候不用Maven管理 jar包都要自己手动去导入 去下载 但是配置好YUM仓库 就放佛在用Maven管理Java项目 基于RPM包管理 能够从…

temu英国电商市场洞察:2月份商品销售数据分析Python数据采集Api

文章目录 引言可视化分析数据展示商品类目占比分析销售额分析价格区间占比分析各类目新品占比分析 写在最后 引言 在美国市场稳步增长基础上,Temu也不断加快全球步伐,现已进入47个国家,光23年9月份就进驻了10个国家,创造单月扩张国…

Redis底层数据结构之Hash

文章目录 1. Redis底层hash编码格式2. Redis 6源码分析3. Redis 7源码分析 1. Redis底层hash编码格式 在redis6中hash的编码格式分别是ziplist(压缩列表)和hashtable,但在redis7中hash的编码格式变为了listpack(紧凑列表&#xf…

HADOOP完全分布式搭建(饭制版)

HADOOP完全分布式搭建(饭制版) 1.虚拟机安装 安装系统 点击VMware Workstation左上角文件,新建虚拟机 选择自定义,点击下一步 点击下一步 选择稍后安装操作系统(后续我们使用的操作系统为CentOS7),点击…

解决vue2+elementUI的下拉框出现自动校验的问题

问题: 总结原因是因为新增的时候,传了空值进去 可以这样子解决 this.formData.value && this.$set(this.model, this.formData.key, this.formData.value)这种是只有值存在的时候才会给他赋值,但是这只解决单选下拉框,…

SQLiteC/C++接口详细介绍之sqlite3类(五)

快速跳转文章列表:SQLite—系列文章目录 上一篇:SQLiteC/C接口详细介绍之sqlite3类(四) 下一篇:SQLiteC/C接口详细介绍之sqlite3类(六)(未发表) 14.sqlite3_busy_handle…

【STL】string各种函数的应用

1.string 基本赋值操作 string assign(string str,int n) string assign(string str,int pos,int n) 2.string存取字符操作 (at()) 注意:[ ]越界不会抛出异常,at越界会抛出异常 3.string拼接…

从零开始利用MATLAB进行FPGA设计(一):建立脉冲检测模型的Simulink模型1

文章灵感来源于MATLAB官方免费教程:HDL Coder Self-Guided Tutorial 考虑到MATLAB官网的英文看着慢,再加上视频讲解老印浓浓的咖喱味,我决定记录利用MATLAB&Simulink&SystemGenerator进行FPGA数字信号处理的学习过程。 在进行数字信…

vue学习笔记24-组件事件配合v-model使用

搜索时v-model绑定的search数据时时发生变化 watch侦听器时时监察变化&#xff0c;一旦数据发生变化 &#xff0c;就实时发送数据给父组件 子组件的完整代码&#xff1a; <template>搜索&#xff1a;<input type"text" v-model"search"> <…

如何把网站的http改成https?

想把网站从不安全的HTTP换成安全的HTTPS&#xff1f;来瞧瞧下面几步操作&#xff1a; 1.挑个SSL证书&#xff1a; - 根据你的网站情况&#xff08;比如就一个域名、多个域名还是啥域名都得管&#xff09;&#xff0c;找一款适合的SSL证书&#xff0c;有免费的DV&#xff08;验…

k8s-Istio服务网络 27

官网&#xff1a;https://istio.io/latest/zh/about/service-mesh/ Istio与k8s的区别 SpringCloud传统微服务结合k8s与Istio与k8s结合&#xff1a; Istio数据面&#xff1a;通过envoy以sidecar方式拦截svc的流量来进行治理。 Istio控制面&#xff1a;pilot list/watch APIserv…

【WSN覆盖优化】基于改进黏菌算法的无线传感器网络覆盖 WSN覆盖优化【Matlab代码#65】

文章目录 【可更换其他算法&#xff0c;获取资源请见文章第5节&#xff1a;资源获取】1. 改进SMA算法1.1 改进参数p1.2 混沌精英突变策略 2. WSN节点感知模型3. 部分代码展示4. 仿真结果展示5. 资源获取 【可更换其他算法&#xff0c;获取资源请见文章第5节&#xff1a;资源获取…

TypeScript(五)交叉类型,联合类型,映射类型

交叉类型 交叉类型是将多个类型合并为一个类型。可以把现有的多种类型叠加到一起成为一种类型&#xff0c;它包含了所需的所有类型的特性。使用符号 & 表示。交叉类型 A & B 表示&#xff0c;任何一个新类型必须同时属于 A 和 B&#xff0c;才属于交叉类型 A & B …

数据库基础知识超详细解析~‍(进阶/复习版)

文章目录 前言一、数据库的操作1.登入数据库2.创建数据库3.显示当前数据库4.使用数据库5.删除数据库 二、常用数据类型三、数据库的约束1约束类型2NULL约束3UNIQUE:唯一约束4DEFAULT&#xff1a;默认值约束5 PRIMARY KEY&#xff1a;主键约束6 FOREIGN KEY&#xff1a;外键约束…

MyBatis-Plus学习记录

目录 MyBatis-Plus快速入门 简介 快速入门 MyBatis-Plus核心功能 基于Mapper接口 CRUD 对比mybatis和mybatis-plus&#xff1a; CRUD方法介绍&#xff1a; 基于Service接口 CRUD 对比Mapper接口CRUD区别&#xff1a; 为什么要加强service层&#xff1a; 使用方式 CR…

【CSS颜色】

本文章属于学习笔记&#xff0c;在https://www.freecodecamp.org/chinese/learn/2022/responsive-web-design/中练习 三、CSS颜色 1、有两种主要的颜色模型:电子设备中使用的加性RGB(红、绿、蓝)模型和印刷品中使用的减色CMYK(青色、品红、黄色、黑色)模型。 使用RGB模型。这…

Ypay源支付6.9无授权聚合免签系统可运营源码

YPay是一款专为个人站长设计的聚合免签系统&#xff0c;YPay基于高性能的ThinkPHP 6.1.2 Layui PearAdmin架构&#xff0c;提供了实时监控和管理的功能&#xff0c;让您随时随地掌握系统运营情况。 说明 Ypay源支付6.9无授权聚合免签系统可运营源码 已搭建测试无加密版本…

FastWiki v0.1.0发布!新增超多功能

FastWiki 发布 v0.1.0 https://github.com/239573049/fast-wiki/releases/tag/v0.1.0 更新日志 兼容OpenAI接口格式删除Blazor版本UI删除useEffect,解决可能存在问题的bug修复对话可以看到所有对话Merge branch ‘master’ of https://gitee.com/hejiale010426/fast-wiki更新…