随笔分类 - Python基础
学会它你就是初级程序员
摘要:列表类型内置方法 一、列表类型内置方法(list) 1.用途:多个装备、多个爱好、多门课程,甚至是多个女朋友 2.定义:[]内可以有多个任意类型的值,逗号分隔元素 3.常用操作+内置方法:常用操作和内置方法分为优先掌握(今天必须得记住)、需要掌握(一周内记住)、其他操作(了解)三个部分。 1.1 优
阅读全文
摘要:字符串类型内置方法 一、字符串类型内置方法(str) 1.用途:描述性质的东西,如人的名字、单个爱好、地址、国家等 2.定义:使用''、""、''''''、""""""包裹的的一串字符 u'unicode': unicode编码的字符串 b'101': 二进制编码的字符串 r'\n': 原生字符串,
阅读全文
摘要:数字类型内置方法 一、整型内置方法(int) 1.用途:年龄、号码、等级 2.定义:可以使用int()方法将纯数字的字符串转为十进制的整型 3.常用操作+内置方法:算术运算+比较运算 1.1 长整型 长整型只在python2中存在,python3中不存在长整型。 4.存一个值or多个值:一个值 5.
阅读全文
摘要:对象的高度整合 一、没有对象 以未来我们要连接数据库举例,如果没有面向对象的思想,我们只要想要使用一个方法,就必须得这样做 由于host、port、db、charset可能是固定不变的,sql一直在变化,因此我们通过上述的方法实现不同的sql语句,非常麻烦,因此我们可以改用默认形参 虽然是用默认参数
阅读全文
摘要:对象的绑定方法 一、对象的绑定方法 类名称空间中定义的数据属性和函数属性都是共享给所有对象用的 对象名称空间中定义的只有数据属性,而且是对象所独有的数据属性 二、类使用对象的绑定对象 类中定义的函数是类的函数属性,类可以使用,但使用的就是一个普通的函数而已,意味着需要完全遵循函数的参数规则,该传几个
阅读全文
摘要:类和数据类型 一、类与数据类型 python3中统一了类与类型的概念,类就是类型 lis和lis2都是实例化的对象,因此lis使用append方法和lis2无关 二、list.append()方法原理
阅读全文
摘要:属性查找 先从对象自己的名称空间找,没有则去类中找,如果类也没有则报错 由于上述修改的是类属性,类属性的count已经被修改为3,所以其他实例的count都为3 由于aa是私有属性,因此stu们都会用自己私有的aa,不会用类的aa
阅读全文
摘要:定制对象独有特征 一、引入 对于上述的学生类,如果类的属性改了,则其他对象的属性也会随之改变 二、定制对象独有特征 对象本质类似于类,也是一个名称空间,但是对象的名称空间存放对象独有的名字,而类中存放的是对象们共有的名字。因此我们可以直接为对象单独定制名字。 三、属性查找 首先从自身查找,没找到往类
阅读全文
摘要:类和对象 一、类和对象 类的意思:种类、分类、类别 对象是特征与技能的结合体,我可能有身高体重、而你也有身高体重,所以你会说你像我,但是你一定不会说你像阿猫阿狗。并且我和你其实就可以说成是一类,而你和选课系统不能说是一类,因此给出类的定义:类就是一系列对象相似的特征与技能的结合体。 在现实世界中:先
阅读全文
摘要:面向对象编程介绍 一、面向过程编程 面向过程变成的核心是过程二字,过程指的是解决问题的步骤,即先干什么再干什么然后干什么…… 基于面向过程编程的思想编写程序好比在设计一条流水线,是一种机械式的思维方式。 优点:复杂的问题流程化、进而简单化 缺点:扩展性差 二、面向对象编程 你可以把你自己想象成如来佛
阅读全文
摘要:面向对象程序设计的由来(历史故事) 一、概述 1.1 1940年以前:面向机器 最早的程序设计都是采用机器语言来编写的,直接使用二进制码来表示机器能够识别和执行的指令和数 据。简单来说,就是直接编写 0 和 1 的序列来代表程序语言。例如:使用 0000 代表 加载(LOAD),0001 代表 存储
阅读全文
摘要:一、基于TCP协议 基于tcp的套接字,关键就是两个循环,一个链接循环,一个通信循环 socketserver模块中分两大类:server类(解决链接问题)和request类(解决通信问题) 1.1 server类 1.2 request类 1.3 继承关系 1.4 服务端 1.5 客户端 1.6
阅读全文
摘要:基于UDP协议的socket套接字编程 一、UDP套接字简单示例 1.1 服务端 二、客户端 UDP是无链接的,先启动哪一端都不会报错 UDP协议是数据报协议,发空的时候也会自带报头,因此客户端输入空,服务端也能收到 三、UPD套接字无粘包问题 3.1 服务端 3.2 客户端 UPD协议一般不用于传
阅读全文
摘要:解决粘包问题 一、解决粘包问题(low版) 问题的根源在于,接收端不知道发送端将要传送的字节流的长度,所以解决粘包的方法就是围绕,如何让发送端在发送数据前,把自己将要发送的字节流总大小让接收端知晓,然后接收端来一个死循环接收完所有数据。 1.1 服务端 1.2 客户端 4.4 客户端
阅读全文
摘要:粘包问题 一、什么是粘包? 注意:只有TCP有粘包现象,UDP永远不会粘包,为何,且听我娓娓道来。 首先需要掌握一个socket收发消息的原理 发送端可以是一K一K地发送数据,而接收端的应用程序可以两K两K地提走数据,当然也有可能一次提走3K或6K数据,或者一次只提走几个字节的数据,也就是说,应用程
阅读全文
摘要:模拟ssh远程执行命令 一、服务端 二、客户端 输入 命令,由于服务端发送字节少于1024字节,客户端可以接受。 输入 命令,由于服务端发送字节多于1024字节,客户端只接受部分数据,并且当你再次输入 命令的时候,客户端会接收 命令的结果,但是会打印上一次的剩余未发送完的数据,这就是粘包问题。
阅读全文
摘要:Socket抽象层 一、Socket抽象层 我们知道两个进程如果需要进行通讯最基本的一个前提是能够唯一标示一个进程,在本地进程通讯中我们可以使用PID来唯一标示一个进程,但PID只在本地唯一,网络中的两个进程PID冲突几率很大,这时候我们需要另辟它径了,我们知道IP层的IP地址可以唯一标示主机,而T
阅读全文
摘要:基于TCP协议的socket套接字编程 一、什么是Scoket Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口。在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket接口后面,对用户来说,一组简单的接口就是全部,让Socket去组织
阅读全文
摘要:TCP协议的三次握手和四次挥手 一、背景描述 通过OSI七层网络模型中IP层的介绍,我们知道网络层,可以实现两个主机之间的通信。但是这并不具体,因为,真正进行通信的实体是在主机中的进程,是一个主机中的一个进程与另外一个主机中的一个进程在交换数据。IP协议虽然能把数据报文送到目的主机,但是并没有交付给
阅读全文
摘要:大白话OSI七层协议 互联网的本质就是一系列的网络协议,这个协议就叫OSI协议(一系列协议),按照功能不同,分工不同,人为的分层七层。实际上这个七层是不存在的。没有这七层的概念,只是人为的划分而已。区分出来的目的只是让你明白哪一层是干什么用的。 每一层都运行不同的协议。协议是干什么的,协议就是标准。
阅读全文