Python--基础2
class Ball:
#def setname(self,name):
def __init__(self,name):
self.name = name
def __kick(self): #__:私有
print('我叫%s,谁踢我'%self.name) >>> tt = Ball()
>>> tt.kick('西瓜')
Traceback (most recent call last):
File "<pyshell#1>", line 1, in <module>
tt.kick('西瓜')
TypeError: kick() takes 1 positional argument but 2 were given
>>> tt.setname('nihao')
>>> tt.kick
<bound method Ball.kick of <__main__.Ball object at 0x000002146E286898>>
>>> tt.kick()
我叫nihao,谁踢我 >>> tt = Ball('nihaoya')
>>> tt._Ball__kick
<bound method Ball.__kick of <__main__.Ball object at 0x000001B6B2C36898>>
>>> tt._Ball__kick()
我叫nihaoya,谁踢我
class Father1:
def hello(self):
print('你好,这是在运行父程序') class Chilrd(Father1):
pass import random as r class Fish:
def __init__(self):
self.x = r.randint(0,10)
self.y = r.randint(0,10)
def move(self):
self.x -= 1
print('现在的位置是:',(self.x,self.y))
class Goldfish(Fish):
pass
class Shtingfish(Fish):
pass class Shark(Fish):
def __init__(self): #重写了__init__(self)方法,新的__init__方法里没有初始化鲨鱼的x,y坐标
super().__init__() #super__init__()方法,先调用了Fish.__init__()方法
self.hungry = True
def eat(self):
if self.hungry:
print('好香,在吃会')
self.hungry = False
else:
print('不能吃了')
>>> sharkfish = Shark()
>>> sharkfish.move() ##重写了__init__(self)方法,新的__init__方法里没有初始化鲨鱼的x,y坐标
Traceback (most recent call last):
File "<pyshell#24>", line 1, in <module>
sharkfish.move()
File "C:\Users\tpuser\Desktop\python_20180328\复习第二个.py", line 42, in move
self.x -= 1
AttributeError: 'Shark' object has no attribute 'x'
>>> sharkfish.eat()
好香,在吃会
>>> sharkfish.eat() #super.__init__() :super__init__()方法,先调用了Fish.__init__()方法
>>> sharkfish = Shark()
>>> sharkfish.eat()
好香,在吃会
>>> sharkfish.move()
现在的位置是: (8, 9)
#多重继承
class Base1:
def foo1(self):
print('1')
class Base2:
def foo2(self):
print('2') class Bss(Base1,Base2):
pass >>> bb= Bss()
>>> bb.foo1()
1
>>> bb.foo2()
2 #组合
class Lala:
def __init__(self,x): #self 表示类class本身: Lala
self.num= x
class Eilinge:
def __init__(self,x,):
self.num = x
class Family(Lala,Eilinge):
def __init__(self,x,y):
self.lala= Lala(x)
self.eilinge = Eilinge(y)
def love(self):
#print(type(self.lala.num))
print(self.lala.num+' i love you'+self.eilinge.num)
class BB:
def print1():
print('hhaha')
>>> BB.print1()
hhaha
>>> cc= BB()
>>> cc.print1()
Traceback (most recent call last):
File "<pyshell#69>", line 1, in <module>
cc.print1()
TypeError: print1() takes 0 positional arguments but 1 was given Family.__dict__
mappingproxy({'__module__': '__main__', '__init__': <function Family.__init__ at 0x0000019EF2E528C8>,
'love': <function Family.love at 0x0000019EF2E52950>, '__doc__': None})
Python--基础2的更多相关文章
- python之最强王者(2)——python基础语法
背景介绍:由于本人一直做java开发,也是从txt开始写hello,world,使用javac命令编译,一直到使用myeclipse,其中的道理和辛酸都懂(请容许我擦干眼角的泪水),所以对于pytho ...
- Python开发【第二篇】:Python基础知识
Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...
- Python小白的发展之路之Python基础(一)
Python基础部分1: 1.Python简介 2.Python 2 or 3,两者的主要区别 3.Python解释器 4.安装Python 5.第一个Python程序 Hello World 6.P ...
- Python之路3【第一篇】Python基础
本节内容 Python简介 Python安装 第一个Python程序 编程语言的分类 Python简介 1.Python的由来 python的创始人为吉多·范罗苏姆(Guido van Rossum) ...
- 进击的Python【第三章】:Python基础(三)
Python基础(三) 本章内容 集合的概念与操作 文件的操作 函数的特点与用法 参数与局部变量 return返回值的概念 递归的基本含义 函数式编程介绍 高阶函数的概念 一.集合的概念与操作 集合( ...
- 进击的Python【第二章】:Python基础(二)
Python基础(二) 本章内容 数据类型 数据运算 列表与元组的基本操作 字典的基本操作 字符编码与转码 模块初探 练习:购物车程序 一.数据类型 Python有五个标准的数据类型: Numbers ...
- Python之路【第一篇】python基础
一.python开发 1.开发: 1)高级语言:python .Java .PHP. C# Go ruby c++ ===>字节码 2)低级语言:c .汇编 2.语言之间的对比: 1)py ...
- python基础之day1
Python 简介 Python是著名的“龟叔”Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言. Python为我们提供了非常完善的基础代码库,覆盖了 ...
- python基础之文件读写
python基础之文件读写 本节内容 os模块中文件以及目录的一些方法 文件的操作 目录的操作 1.os模块中文件以及目录的一些方法 python操作文件以及目录可以使用os模块的一些方法如下: 得到 ...
- python基础之编码问题
python基础之编码问题 本节内容 字符串编码问题由来 字符串编码解决方案 1.字符串编码问题由来 由于字符串编码是从ascii--->unicode--->utf-8(utf-16和u ...
随机推荐
- XHML教会我的一些东西-3
在寒假期间,隔几天就同学聚会,每天都是起床困难户.每天都想着要完成任务,要学习新的东西.但是总是被自己惰性占为上风.感觉自己很没用,但是又继续堕落.真的不能理解自己.呵呵.... 在放假一段时间之后, ...
- JavaScript库 — — React
React不支持IE6.IE7 React是什么?用于构建用户界面的JAVASCRIPT库,是MVC中的V(视图). React特点:1. 声明式设计2. 减少与DOM的交互,高效3. JSX - J ...
- 绘图之Canvas学习
一 Canvas的用法 博客:http://blog.taorenjia.com/?p=237 1.drawCircle(float cx, float cy, float radius, ...
- Struts2_Action
具体视图的返回可以由用户自己定义的Action来决定:具体的手段是根据返回的字符串找到对应的配置项,来决定视图的内容:具体Action的实现可以是一个普通的java类,里面有public String ...
- django orm 多对多自定义第三张表
# -*- coding: utf-8 -*-# Generated by Django 1.11.11 on 2018-09-02 08:07from __future__ import unico ...
- 《深入理解Java 7核心技术与最佳实践》读书笔记(2) Java语言动态性引言
Java语言是一种静态类型的编程语言.静态类型的含义是指在编译时进行类型检查.Java源代码中的每个变量的类型都要显式地进行声明.所有变量.方法的参数和方法返回值的类型在程序运行之前就必须是已知的.J ...
- 屏蔽各类弹窗广告(WPS、智能云输入法)
托盘中的广告“领取双11红包,最高1111元”的罪魁祸首是“智能云输入法” 广告在托盘中闪动: 结束SCSkinInst.exe后,托盘中的广告消失: 智能云输入法的安装路径可参考: C:\Progr ...
- frame、window和dialog区别
属性 Window Frame Dialog 模式化 不是 不是 不是(可设置) 可调大小 不可 可 可 标题栏 无 有 有 边界 无 有 有 标题 无 有 有 菜单栏 无 有 无 焦点管理器 有 有 ...
- Leetcode 46 47 Permutation, 77 combination
Permutation class Solution { List<List<Integer>> res = new ArrayList<List<Integer& ...
- NutDao配置多数据源
首先,我必须声明,这是一个非常简单的方法,很多小菜没做出来,是因为把nutz想得太复杂 数据源(或者是数据库连接池),在Nutz.Ioc看来,是一个普通的Bean,没任何特别之处. 再强调一点,除了$ ...