01 2019 档案
摘要:一,简单明了了解udp套接字编程 客户端: 服务器端: udp套接字优点在于 可以同时接收多个客户端请求并通信,而tcp同一时间只能与一个客户端通信(纯净tcp),只有结束当前通信后才能与其他客户端通信。 二,udp示例(时间服务器) 服务器端: 客户端: 运行结果:
阅读全文
摘要:一,基础版服务器端客户端(一收一发,只有一个客户端链接) 服务器端: 客户端: 二,可交流版服务器端客户端(多收多发,只有一个客户端链接) 服务器端: 客户端: 三,多链接版服务器端客户端(多收多发,多个客户端链接) 服务器端: 客户端1: 客户端2:
阅读全文
摘要:Python终端如何输出彩色字体 实现过程: 终端的字符颜色是用转义序列控制的,是文本模式下的系统显示功能,和具体的语言无关。 转义序列是以ESC开头,即用\033来完成(ESC的ASCII码用十进制表示是27,用八进制表示就是033)。 书写格式: 开头部分:\033[显示方式;前景色;背景色m
阅读全文
摘要:数学运算 abs:求数值的绝对值 1 >>> abs(-2) 2 2 divmod:返回两个数值的商和余数 1 >>> divmod(5,2) 2 (2, 1) 3 >> divmod(5.5,2) 4 (2.0, 1.5) max:返回可迭代对象中的元素中的最大值或者所有参数的最大值 1 >>>
阅读全文
摘要:一,什么是异常和错误? 异常和错误是不同的概念,错误大都是指python语法上的错误,编译时就会报错。异常是指不符合客观逻辑,或者逻辑上产生得到错误,比如res=1/0,,就是一个异常。 错误: 异常: 二,如何处理异常? 异常的处理可以使用if判断进行处理(low的方式),最常用的是使用try e
阅读全文
摘要:1 # Author : Kelvin 2 # Date : 2019/1/25 15:20 3 class Foo: 4 def __init__(self): 5 self.original_price = 100 6 self.discount = 0.8 7 8 @property 9 def price(sel...
阅读全文
摘要:@property 的功能就是类或类的实例化对象调用类的方法时,只需要用 类.方法名 或对象名.方法名 不需要加括号就可直接调用。
阅读全文
摘要:使用类的装饰器完成:在类实例化对象时,对实例化参数的类型进行限制。
阅读全文
摘要:此时如果实例化对象时,传入的参数不符合条件就会抛出异常!
阅读全文
摘要:1 #Author : Kelvin 2 #Date : 2019/1/22 20:38 3 class Foo: 4 def __get__(self, instance, owner): 5 print("__get__") 6 def __set__(self, instance, value): 7 print("__set_...
阅读全文
摘要:1 #Author : Kelvin 2 #Date : 2019/1/22 20:02 3 class Fi: 4 def __init__(self): 5 self.a=1 6 self.b=1 7 def __iter__(self): 8 return self 9 def __next__(se...
阅读全文
摘要:也就是给对象__dict__增加属性的一种方式。
阅读全文
摘要:本质:自定制打印内容。
阅读全文
摘要:1 #Author : Kelvin 2 #Date : 2019/1/17 21:15 3 4 #第一种导入方式 5 from m import test 6 res1=test.test1() 7 print(res1) 8 9 #第二种导入方式 10 from m.test import * 11 res2=test1() 12 print(res2) 13 14 ...
阅读全文
摘要:反射的四个相关方法: 反射的应用实例: 如果员工1和员工2 分别做一个工作,此时员工1 有事耽误了进程,员工2可以使用反射来判断员工1是否已经实现了指定的功能,如果没实现则继续实现自己的业务代码。 双下划綫的attr方法:
阅读全文
摘要:1 #Author : Kelvin 2 #Date : 2019/1/17 15:27 3 4 #字典的update方法,是向调用者字典中添加另外一个字典 5 dict1 = {"name":"kelvin", "age": 22} 6 dict2 = {"sex":"male"} 7 dict1.update(dict2) 8 print(dict1) 9 #>>>:...
阅读全文
摘要:1:继承,顾名思义就是子代继承父辈的一些东西,在程序中也就是子类继承父类的属性和方法。 可见,即使Son类没有定义init方法,money属性和teach方法,但是由于Son类继承了Father类,所以在实例化Son时可以使用父类的属性值和方法。 误区:如果子类存在与父类同名的属性和方法,并不是覆盖
阅读全文
摘要:1 # Author : Kelvin 2 # Date : 2019/1/15 20:44 3 4 """ 5 学校与老师关联 6 课程与老师和学校关联 7 """ 8 9 10 class School(): 11 def __init__(self, name, profession): 12 self.name = name 13 ...
阅读全文
摘要:二,面向对象静态属性,类方法,静态方法 静态属性: 静态属性在调用方法时,不需要加括号,直接使用 对象.函数名 调用 类方法: 静态方法:
阅读全文
摘要:一,初识面向对象 前言:我们都知道在Python中,一切皆对象,对象贯穿了Python的整个学习,本次随笔的主要内容就是谈一谈面向对象的一些基础知识。 1:面向对象设计 学过面向对象编程的人提到面向对象首先会想到的是使用class定义一个特定的类,然后实例化对象,调用方法等等。其实面向对象我觉得是一
阅读全文
摘要:1 # Author : Kelvin 2 # Date : 2019/1/10 12:36 3 4 # 实现计算器功能(加减乘除) 例如:2+(5*2)-(6/2*(5-1))) 4+2*3 1+(2*(3-1))+(2*(1+2)) 5 import re 6 #①计算不包含括号的运算 7 de
阅读全文
摘要:random 常用的方法: 使用random实现生成验证码功能:
阅读全文
摘要:1 #Author : Kelvin 2 #Date : 2019/1/6 15:10 3 4 import time 5 #获取此时的时间戳(从此刻到1970年一月一号零点的秒数) 6 res1=time.time() 7 print(res1) 8 #>>> 1546759871.016021 9 10 #获取结构化时间 11 res2=time.localtime()...
阅读全文
摘要:解压序列: 1 a,b=(1,2) 2 # a,b=[1,2] 3 print(a,b) 4 #输出结果:1 2 5 6 #获取第一个值和最后一个值 7 a,*_,c=(1,2,3,4,5,6,7,8,9) 8 print(a) 9 print(c) 10 # 输出结果: 11 # 1 12 # 9
阅读全文
摘要:装饰器的功能: 装饰器作用就是给其他函数添加额外功能。 装饰器=高阶函数+函数嵌套+闭包 下面通过一段代码来了解一下装饰器的结构和使用方法: 那么现在有一个问题:如果被修饰函数有返回值怎么办?别着急,下面一段代码告诉你! 如果被修饰函数带参数又怎么办呢?继续...... 下面我们使用装饰器来完成一个
阅读全文
摘要:1 #Author : Kelvin 2 #Date : 2019/1/5 13:20 3 4 #set集合的创建(创建后可修改) 5 li=["kelvin",1,2,"zhangsan","kelvin"] 6 s=set(li) 7 print(s) 8 #运行结果:{1, 2, 'kelvin', 'zhangsan'} 9 10 #frozenset集合的创建(创...
阅读全文
摘要:拷贝: 说明:原则上就是把数据分离出来,复制其数据,并以后修改互不影响。 何来深浅拷贝的说法? 深浅拷贝的“深”和“浅”可以理解为从变量到硬盘上的物理存储介质之间的层次的多少。 下面用一个示例来解释浅拷贝: 对于上面浅拷贝的示例我们可以看到,当浅拷贝之后,修改其中一个不可变类型元素(数字,字符串等)
阅读全文
摘要:二、生成器(可以看做是一种数据类型) 描述: 通过列表生成式,我们可以直接创建一个列表。但是,受到内存限制,列表容量肯定是有限的。而且,创建一个包含100万个元素的列表,不仅占用很大的存储空间,如果我们仅仅需要访问前面几个元素,那后面绝大多数元素占用的空间都白白浪费了。所以,如果列表元素可以按照某种
阅读全文
摘要:一、迭代器 概述: 迭代是Python最强大的功能之一,是访问集合元素的一种方式。 迭代器是一个可以记住遍历的位置的对象。 迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。 迭代器有两个基本的方法:iter() 和 next()。 字符串,列表或元组对象都可
阅读全文
摘要:文件读取: 文件写入: 标注**:使用with open() as f 方式读写数据时简化了f.close()的步骤 文件刷新(flush): 文件tell方法: 描述:此方法返回该文件中读出的文件/写指针的当前位置。 文件seek方法: 描述:seek()用于移动文件读取指针到指定位置。 格式:f
阅读全文
摘要:max函数(min函数使用方法一致):
阅读全文
摘要:zip函数: 描述:将zip函数中的两个可迭代对象参数按对应索引值进行匹配组合,得到zip对象。(拉链式函数) zip函数简单应用如下:
阅读全文
摘要:map函数: map函数特点:对可迭代对象中的每个元素进行相同的操作(例如每个元素+1等等) 1 #————————————————map函数———————————————————— 2 #对列表的各个元素实现加一功能 3 li=[1,2,3] 4 #定义一个加一函数 5 def func1(x):
阅读全文