Python类(一)-实例化一个类
#-*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR" class Person():
n = 123 #类变量
def __init__(self,name,money,age=33): #构造函数
#给实例化的类传参数
self.name = name #实例变量
self.money = money
self.__age = age #私有属性,在外部不能调用查看,可以在内部定义函数来查看 def Age(self):
print("%s is %s Yeas Old." %(self.name,self.__age)) def talk(self): #类的方法、功能(动态属性)
print("%s is talking to the shop." % self.name) def buy(self, thing):
print("%s has %s$ and buy a %s" % (self.name,self.money, thing)) def __walk(self): #私有方法
print("%s is walking" %self.name) def __del__(self): #析构函数,全部实例释放、销毁时会自动执行,通常用于收尾工作
print("%s is die." %self.name) p1 = Person("Jack",100) #实例化一个对象
p1.talk() #调用Person里的talk方法
p1.buy("meat") #给Person里的buy传参 p1._Person__walk() #访问私有方法 p1.walk = True #给p1新增一个属性 p1.n = "test"
print(p1.n) #del p1 #如果不想等实例释放时才删除,可以先删除实例 print(p1.Age()) #查看私有属性 #del p1.talk #删除类的talk方法
#p1.talk() #会报错,因为talk方法被删除了
def __init__(self) 为构造函数,给实例化的类传参数,self为实例化的对象赋予的变量,相当于例子中的p1
运行结果

Python类(一)-实例化一个类的更多相关文章
- python中如何统计一个类的实例化对象
类中的静态变量 需要通过类名.静态变量名 来修改 :通过对象不能修改 python中如何统计一个类的实例化对象?? class Person: #静态变量count,用于记录类被实例化的次数 coun ...
- MFC一个类访问另一个类成员对象的成员变量值
MFC中一个类要访问另外一个类的的对象的成员变量值,这就需要获得原来那个类对象的指针,其实有好几种方法都可以实现. 比如维护一个单例模式.设置静态变量等等.我们这里举个列子,实现多个类之间的相互访问. ...
- java 一个类调用另一个类的方法
在要调用的类B中对调用类A实例化(在B中:A a = new A();a.function();)
- php一个类引用另一个类的方法的写法
default.php: <?php namespace SiteInfo{ class Site{ var $url; var $title; function setUrl($par){ $ ...
- 通过string型类名实例化一个类
DataTable dt = new DBHelper().getIndexInfo(code_id); DataRow row = dt.Rows[0]; string dllName = row[ ...
- Hibernate框架增删改查测试类归为一个类
package cn.happy.test; import org.hibernate.Session; import org.hibernate.SessionFactory; import org ...
- c++ 一个类使用另外一个类的变量或方法
如:a.cpp 声明 int a=9; 要在b.cpp文件中使用变量 a extern int a; int b=1; cout<<a+b; 结果为10;
- 通过class类来实例化其他类的对象(使用有参构造函数)
import java.lang.reflect.Constructor; import java.lang.reflect.InvocationTargetException; class Pers ...
- Java-确定一个类对象代表一个类还是接口
package com.tj; public class MyClass implements Cloneable { public static void main(String[] args) { ...
随机推荐
- 30-THREE.JS 圆环
<!DOCTYPE html> <html> <head> <title>Example 05.03 - Basic 2D geometries - R ...
- LeetCode OJ :Unique Binary Search Trees II(唯一二叉搜索树)
题目如下所示:返回的结果是一个Node的Vector: Given n, generate all structurally unique BST's (binary search trees) th ...
- 剑指offer--37.和为S的两个数字
链接:https://www.nowcoder.com/questionTerminal/390da4f7a00f44bea7c2f3d19491311b来源:牛客网@华科渣硕 不要被题目误导了!证明 ...
- 闸流管(或双向可控硅) IGBT 应用
十条规则规则1. 为了导通闸流管(或双向可控硅),必须有门极电流≧IGT ,直至负载电流达到≧IL .这条件必须满足,并按可能遇到的最低温度考虑.规则2. 要断开(切换)闸流管(或双向可控硅),负载电 ...
- scorm标准的LMS在客户端的运行机制
1)运行SCORM APIAdapter. 2)调用API初始化函数. 3)加载课件SCO初始化数据. 4)获取Data Model中的用户ID和用户姓名. 5)获取Data Mode ...
- iOS 单元测试和UI测试教程
原文:iOS Unit Testing and UI Testing Tutorial 作者:Audrey Tam 译者:kmyhy 编写测试不是为了追求刺激,测试是为了避免你崭新的 App 变成了充 ...
- Leetcode 1018. Binary Prefix Divisible By 5
class Solution: def prefixesDivBy5(self, A: List[int]) -> List[bool]: ans,t = [],0 for a in A: t ...
- 头文件string.h中的函数及使用方法
来源:http://blog.csdn.net/tsyj810883979/article/details/5116817 字符串拷贝1 @函数名称: strdup函数原型: char *st ...
- linux中的vim编辑器的使用
vim的三种模式: 常规模式(命令模式)也是默认模式,从其它模式进行命令模式按esc i 在光标前插入文本 o 命令是指在当前行下方插入新行 dd 是删除光标所在的整个一行 yy 是在光标所在整个放入 ...
- Java泛型小记
Automobile类: public class Automobile { private String name; public Automobile(String name){ this.nam ...