先来一段代码 表示互殴

class Gailun:
country='demaxia'
def __init__(self,name,age,life_value,att):
self.name=name
self.age=age
self.life_value=life_value
self.att=att
def attack(self,enemy):
enemy.life_value -= self.att class Riwen:
country='nocxus'
def __init__(self,name,age,life_value,att):
self.name=name
self.age=age
self.life_value=life_value
self.att=att
def attack(self,enemy):
enemy.life_value-=self.att g1=Gailun('nod','',1000,100) r1=Riwen('riwen','',800,200) while True:
if g1.life_value>=0:
g1.attack(r1)
print('riven的生命值是%s'%r1.life_value)
r1.attack(g1)
print('galn的生命值是%s' % g1.life_value)
if r1.life_value<0:
print('%s已经阵亡' % r1.name)
break
else:
print('%s已经阵亡,生命值为%s'%(g1.name,g1.life_value))
break

类的创建

#类体定义的代码在类的定义阶段就会运行

class Student:
school='oldboy'
def learn(self):
print('is learning')
def choose_course(self):
print('is choose') print(Student) #查看
print(Student.school)
print(Student.learn) #修改
Student.school='oldboyedu'
print(Student.school) #增加 Student.country='China'
print(Student.country) #删除
del Student.country
# print(Student.country) #调用函数
Student.learn('nod')
Student.learn() #如果不传参数会出错

类对象属性的查找

#类的所有数据属性是所有对象共享,所有对象都指向同一个地址
#类定义的函数就是给绑定给对象方法使用
#不同对象就是不同绑定方法
#绑定给谁 就应该由谁来调用 谁来调用就会把谁当做第一个参数传递给对应函数 class Student:
school='oldboyedu'
def __init__(self,name,age,sex):
self.Name=name
self.Age=age
self.Sex=sex
def learn(self):
print('%s is learning'%self.Name) def choose_course(self):
print('is choose_course') stu1=Student('nod','','M')
stu2=Student('luna','','W')
stu1.learn()
stu2.learn()
class Student:
school='oldboyedu'
def __init__(self,name,age,sex):
self.Name=name
self.Age=age
self.Sex=sex
def learn(self):
print('is learning') def choose_course(self):
print('is choose course')
#调用类的过程称之为实例化
#得到一个返回值 即对象 该对象是一个空的stu1
#Stuent.__init__(stu1,'nod','24','M')
stu1=Student('nod','','M')
print(stu1.__dict__) #__dict__ 查看自己的名称空间
print(type(stu1))
print(stu1.Name,stu1.Age,stu1.Sex)

Python类的部分的更多相关文章

  1. Python类中super()和__init__()的关系

    Python类中super()和__init__()的关系 1.单继承时super()和__init__()实现的功能是类似的 class Base(object): def __init__(sel ...

  2. LightMysql:为方便操作MySQL而封装的Python类

    原文链接:http://www.danfengcao.info/python/2015/12/26/lightweight-python-mysql-class.html mysqldb是Python ...

  3. python 类属性与方法

    Python 类属性与方法 标签(空格分隔): Python Python的访问限制 Python支持面向对象,其对属性的权限控制通过属性名来实现,如果一个属性有双下划线开头(__),该属性就无法被外 ...

  4. python 类以及单例模式

    python 也有面向对象的思想,则一切皆对象 python 中定义一个类: class student: count = 0         books = [] def __init__(self ...

  5. Python类的特点 (1):构造函数与方法

    Python中,类的特点: #encoding:utf-8 class Parent(object): x=1 #x是Parent类的属性(字段) def __init__(self): print ...

  6. Python类属性,实例属性

    1.Python类数据属性:定义在类里面但在函数外面的变量,它们都是静态的. #一段很简单的代码,但反应了很多 >>> class A(): a=1 #一个类里面有个属性a > ...

  7. python类及其方法

    python类及其方法 一.介绍 在 Python 中,面向对象编程主要有两个主题,就是类和类实例类与实例:类与实例相互关联着:类是对象的定义,而实例是"真正的实物",它存放了类中 ...

  8. python类的定义和使用

    python中类的声明使用关键词class,可以提供一个可选的父类或者说基类,如果没有合适的基类,那就用object作为基类. 定义格式: class 类名(object): "类的说明文档 ...

  9. Python类的探讨

    我们下面的探讨基于Python3,我实际测试使用的是Python3.2,Python3与Python2在类函数的类型上做了改变 1,类定义语法  Python类定义以关键字class开头,一个类定义例 ...

  10. python - 类成员修饰符

    在java,c#类的成员修饰符包括,公有.私有.程序集可用的.受保护的. 对于python来说,只有两个成员修饰符:公有成员,私有成员 成员修饰符是来修饰谁呢?当然是修饰成员了.那么python类的成 ...

随机推荐

  1. Bootstrap框架整理

    bootstrap框架的介绍 栅格系统 bootstrap框架把整个浏览器的宽度分为12列,并能适配各种屏幕的尺寸大小进行相应的匹配,达到调节页面大小的效果. 首先需要放置一个容器div,class= ...

  2. mysql数据库的基础操作

    注 : 本文中注释因为方便写了# ,mysql中规范应为 -- 创建用户 通过root管理员权限可以创建各种用户,并为他们分配权限及可以操作的数据库. 语法:create user '用户名'@'ip ...

  3. android中include

    android中include. include标签用法. 1.新建一个xml文件,命名 head.xml head.xml文件内容如下: <?xml version="1.0&quo ...

  4. Hive入门学习

    Hive学习之路 (一)Hive初识 目录 Hive 简介 什么是Hive 为什么使用 Hive Hive 特点 Hive 和 RDBMS 的对比 Hive的架构 1.用户接口: shell/CLI, ...

  5. IE9下table th不显示边框解决方法

    添加下面两行样式即可 th, td{ background-clip: padding-box; /*背景被裁剪到内边距框*/ position:relative; }

  6. 为你详解Linux安装GCC方法

    下载: http://ftp.gnu.org/gnu/gcc/gcc-4.5.1/gcc-4.5.1.tar.bz2浏览: http://ftp.gnu.org/gnu/gcc/gcc-4.5.1/查 ...

  7. 近期面试总结(Android)

    关于近期面试总结(2018年下半年) 有些是老生常谈有些是没有遇到的. 1.HTTP和HTTPS的区别 HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全,为 ...

  8. leetcode题解2. Add Two Numbers

    题目: You are given two non-empty linked lists representing two non-negative integers. The digits are ...

  9. FreeMarker基础语法,宏,引用 等

    FreeMarker的插值有如下两种类型: 1,通用插值${expr}; 2,数字格式化插值:#{expr}或#{expr;format} ${book.name?if_exists } //用于判断 ...

  10. vue 使用vux封装的微信分享

    main.js引入 import {WechatPlugin} from 'vux' Vue.use(WechatPlugin) 公共的jswxShare.js import Vue from 'vu ...