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.事件 ...
随机推荐
- 动态加载 ShellCode绕过杀软
反病毒解决方案用于检测恶意文件,并且通常使用静态分析技术来区分二进制文件的好坏.如果是恶意文件本身包含恶意内容(ShellCode),那么依靠静态分析技术会非常有效,但如果攻击者使用轻量级的stage ...
- js 定时器 执行一次和重复执行
1- 执行一次(延时定时器) var t1 = window.setTimeout(function() { console.log('1秒钟之后执行了') },1000) window.clearT ...
- Linux 格式化磁盘
格式化磁盘: mkfs -t ext4 /dev/sdb 初始化磁盘 mkfs.ext4 /dev/sdb
- VSCompile
VS2012加载失败 No exports were found that match the constraint 开始->运行->devenv.exe /resetuserdata-& ...
- macos high sierra 删除多余的管理员的步骤
自己查看了好多文档, 一个比较可靠的地址有两个,不过发现跟我的不一样, 我没有采用. 也在这里贴出来, 供需要的"折腾者"们看看. [某个外国大大的方法] (https://med ...
- Python3正则表达式
正则表达式是一个特殊的字符序列,他能帮助你方便的检查一个字符串是否与某种模式匹配. re.match函数 re.match尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,matc ...
- mapper.xml等资源导入的问题
在pom.xml中的下导入如下字段 <resources> <resource> <directory>src/main/java</directory> ...
- UOJ#339. 【清华集训2017】小 Y 和二叉树 贪心
原文链接 www.cnblogs.com/zhouzhendong/p/UOJ339.html 前言 好久没更博客了,前来更一发. 题解 首先,我们考虑一个子问题:给定根,求出最小中序遍历. 如果根节 ...
- SQL Server 2008R2安装
SQL Server 2008详细安装过程及配置 https://www.cnblogs.com/rewwensoftware/p/9580697.html SQL Server 2008R2 百 ...
- Linux 之数组
数组 和其他编程语言一样,Shell 也支持数组.数组(Array)是若干数据的集合,其中的每一份数据都称为元素(Element). Shell 并且没有限制数组的大小,理论上可以存放无限量的数据.和 ...