Python第一阶段06
1.面向对象编程:
class Dog:
def __init__(self, name):
self.name = name
def bulk(self):
print("%s 汪汪汪。。。"%self.name)
d1 = Dog("aaa")
d2 = Dog("bbb")
d3 = Dog("ccc")
d1.bulk()
d2.bulk()
d3.bulk()
2.实例变量和类变量:
类变量:大家共用的属性,节省开销;
析构函数:
3.继承:
class People():
def __init__(self,name):
self.name = name def talk(self):
print("talk...") def eat(self):
print("eat...") class Man(People):
def drink(self):
print("drink...") m1 = Man("sisi")
m1.drink()
4.多态:
一种接口,多种实现;
# Author:SiSi
class Animal():
def __init__(self, name):
self.name = name
def talk(self):
print("talk...")
def animal_talk(obj):
obj.talk()
class Dog(Animal):
def talk(self):
print("wangwang...")
class Cat(Animal):
def talk(self):
print("miaomiao...")
d = Dog("aaa")
# d.talk()
d1 = Cat("bbb")
# d1.talk()
a = Animal("sisi")
Animal.animal_talk(d)
Animal.animal_talk(d1)
5.静态方法,类方法,属性方法:
静态方法只是名义上归类管,实际上在静态方法里访问不了类和实例中的任何属性和方法;
类方法只能访问类变量,不能访问实例变量;
属性方法:
# Author:SiSi class Dog(object):
def __init__(self, name):
self.name = name @staticmethod # 实际上和类没什么关系了
def eat(self):
print("%s is eating..."%(self.name)) @classmethod
def drink(self):
print("我说类方法") @property
def log(self):
print("我是属性方法。。。") @eat.setter
def log(self, food):
print("log:",food) @eat.deleter
def log(self):
# del self._food
print("删完了。。。") d = Dog("sisi")
# Dog.eat()
d.eat(d)
6.反射详解:
7.异常处理:
names = ['aaa', 'bbb']
data = {} try:
names[]
data['name'] except {KeyError, IndexError} as e:
print("没有这个key",e)
except IndexError as e:
print("列表操作错误",e) except Exception as e:
print("未知错误",e) else:
print("一切正常") finally:
print("不管有错没错,我都执行")
8.Socket通信:
Python第一阶段06的更多相关文章
- python第一阶段总结(2)
python3第一阶段的总结 首先申明一下,本人是看网络课程“老男孩”过来写博客的,想把自己学到的东西分享一下.同时给老男孩打个广告,其教学水平真的挺好的.仅据我个人多年的学习评价. 好,接下来是我对 ...
- python第一阶段总结(1)
python3第一阶段的总结 首先申明一下,本人是看网络课程“老男孩”过来写博客的,想把自己学到的东西分享一下.同时给老男孩打个广告,其教学水平真的挺好的.仅据我个人多年的学习评价. 好,接下来是我对 ...
- Python第一阶段05
1.内置方法: 2.Json序列化: import json info = { 'name': 'sisi', } f = open("test.text", "w&qu ...
- Python第一阶段02
1.模块: import sys print(sys.path) # 打印环境变量 print(sys.argv) # 打印当前文件绝对路径 # print(sys.argv[]) import os ...
- Python第一阶段04
1.文件操作: # 指明编码 f = open("sisi", encoding="utf-8") # 读 data = f.read() print(data ...
- Python第一阶段03
1.文件操作: # 指明编码 f = open("sisi", encoding="utf-8") # 读 data = f.read() print(data ...
- Python第一阶段01
1.变量: name = "sisi" print(name) age = print(age) 2.常量: PIE = 3.1415926 3.注释: # password = ...
- 计算机二级Python(第一阶段)
介绍 本篇文章主要针对于计算机二级考试的崽崽,当然想了解Python和学习Python的崽崽也是可以看本篇文章的:毕竟,手机和电脑都可以运行Python:本篇我文章虽然是笔记,但是也纯靠手打,希望 ...
- Python并发编程06 /阻塞、异步调用/同步调用、异步回调函数、线程queue、事件event、协程
Python并发编程06 /阻塞.异步调用/同步调用.异步回调函数.线程queue.事件event.协程 目录 Python并发编程06 /阻塞.异步调用/同步调用.异步回调函数.线程queue.事件 ...
随机推荐
- jquery锚点跳转
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- PHP流程控制之goto语法
自 PHP 5.3.0 起,还可以使用 goto 来跳出循环. 在本章开始的章节,我们讲解到一个故事,王同学每周往返,但有一个特例:直线电机滑台 项目失败后或者集团临时除知除外,他就可以不再这么每周往 ...
- Error Permission denied when running brew cleanup
Error Permission denied when running brew cleanup When I try to run `brew cleanup` I get: Warning: S ...
- 洛谷 P1032 字串变换 题解
每日一题 day19 打卡 Analysis 广搜+map判重 用find寻找字串,再用replace替换字串 这里的map相当于正常广搜的一个book的作用 #include<iostream ...
- easyui增删改查
easyui的crud(dialog,datagrid.form讲解)1.datagrid布局2.dialog布局3.form布局4.通用的JsonBaseDao增删改方法5.dao层6.web层7. ...
- Educational Codeforces Round 67 (Rated for Div. 2)
A 考虑之前选中没有一个的,那么结果就是\(min(n-s,n-t)\) 那么能选中的第一次就是这个结果\(+1\),但需要拥有两个 \((s>t)\)考虑一开始选不中\(t\),则但选中\(t ...
- 常用spaceclaim脚本
#创建一个长方体,通过两点来确定一个立方体 #MM表示的是以毫米作为单位 #返回的是一个BlockBody的对象 #本函数还有第三个参数可选,分别代表增加材料,切除材料等等 #默认值为增加材料 注:第 ...
- call 和 apply 方法
1:每个函数都包含两个非继承而来的方法:call(),apply(). 2:call方法和apply方法作用是一样的. 下边是call的使用例子: window.color = 'red'; docu ...
- JVM(一) ---JVM的数据模型
JVM的逻辑内存模型图 [逻辑内存模型图] ----- JVM内部分区 其实JVM内部不仅仅只有栈和堆 包括 程序计数器 . Java 虚拟机栈 .本地方法栈.Java 堆.方法区等 1. 程序计数器 ...
- adb-andorid记录当前手机的日志当前显示的app进程及activity,
adb logcat -v time> /home/sumsang.log adb shell dumpsys window | grep mCurrentFocus