- 博客(30)
- 收藏
- 关注
原创 用Python实现并发编程回顾
昨日内容回顾如何复习知识点:总分总先列出提纲,再依次复习,最后再总结操作系统发展史"""其实主要就是围绕CPU利用率的问题"""多道技术"""核心:单核实现并发的效果并发:看起来像同时运行的就可以叫做并发并行:真正意义上的同时运行(有多个CPU)PS:明显出轨 >>>: 星轨空间与时间上的复用 空间上 多个程序公用一套计算机硬件 时间上 切换+保存状态"""# 切换分为两种# 1、当一个程序遇到IO操作,操作系统会立马剥夺该程序的
2021-08-26 18:09:17
146
1
原创 用Python理解进程
进程对象及其他方法"""一台计算机上面运行着很多进程,那么计算机是如何区分并管理这些进程服务端的呢?计算机会给每一个运行的进程分配一个PID号(有点类似于端口号,即唯一标识)如何查看: windows电脑 进入cmd输入tasklist即可查看 tasklist |findstr PID 查看具体的进程 mac电脑 进入终端之后输入ps aux ps aux|grep PID 查看具体的进程"""from multiprocessing import Process, cur
2021-08-26 18:08:16
131
原创 C++之结构体数组
文章目录1、定义结构体2、创建结构体数组3、给结构体数组中的元素赋值4、访问结构体数组中的值#include <iostream>using namesapce std;#include <string>1、定义结构体struct Student{ String name; int age; int score;};作用:将自定义的结构体放入到数组中方便维护2、创建结构体数组struct Student stuArray[3]={ {"张三",18
2021-08-07 11:13:49
655
原创 Python并发程序的预备知识
1、并发编程:并发编程理论居多,实际应用代码很简单听明白理论即可2、多道技术并发: 看起来像是同时运行的就可以称之为并发(言外之意就是不是真的同时执行)并行: 真正意义上的同时执行PS: 并行肯定是并发 单核的计算机肯定不能实现并行,但是可以实现并发 我们直接假设单核就是一个核,干活的就一个人,就不要考虑cpu里面的内核数3、多道技术图解节省多个程序的运行的总耗时图4、多道技术的重点知识空间上的复用与时间上的复用空间上的复用 多
2021-08-06 18:11:55
254
原创 socket套接字的工作流程
套接字工作流程1、我们要研究的是套接字,至于内部的三次握手的知识点就先不用考虑了,详细的流程就不要考虑了2、TCP服务器端端口地址不会变,因为每次TCP的客户端去找TCP服务器端,都是要去找一个固定的地址3、TCP客户端的端口会变化,每次开关机或去不同的局域网都要更改端口4、TCP服务器端:accept()之后接收客户端的三次握手。(见下图)5、bind()的目的是为了能让其他人找到他6、流式协议:不管发送端送多少次,接收端都只接收一次(最终那一次)...
2021-08-06 16:38:38
337
原创 C++常量指针 指针常量
1、const修饰指针 —— 常量指针int a = 10;int b = 10;int *p = &a; const int * p1 = &a;// 常量指针:// 特点:指针的指向可以修改,但是指针的指向的值不可以改// *p1 = 20; // 错的,指针指向的值不可以改// p1 = &b; // 正确,指针指向的值没变int * const p2 = &a;// 指针常量// 特点:指针的指向不可以改,指针的指向的值可以改// *p2
2021-08-06 16:38:01
72
原创 计算机网络与tcp协议
文章目录传输层 tcp\udp应用层:端口介绍sock介绍一:传输层 tcp\udp =》基于端口二、应用层:传输层 tcp\udp应用层:可以自定义协议=》头部+数据部分http https ftp端口介绍那么我们通过ip和mac找到了一台特定的主机,如何标识这台主机上的应用程序,答案就是端口,端口即应用程序与网卡关联的编号sock介绍五层协议计算机1:应用层传输层 # 段的概念:将大的数据分成一个个小段去发送网络层数据链路层物理层 <========== 交互
2021-07-26 11:49:12
70
原创 Python之类的mixins机制
多继承的正确打开方式:mixins机制mixins机制的核心:就是在多继承背景下尽可能多的提升继承的可读性ps:让多继承满足人的思维习惯 =》 什么“是”什么class Vehicle: # 交通工具 passclass FlyableMixin: def fly(self): ''' 飞行功能相应的代码 ''' print("I am flying")class CivilAircraft(
2021-07-22 11:31:51
133
原创 Python定义元类的意义(持续更新)
Python定义元类的意义type -> 元类 -> 类 -> 对象元类定义的目的1、控制类的产生_ _ new _ __ _ init _ _ 2、控制类的调用_ _ call _ __ _ call _ 、 _ new _ 、 _ inti _ _ 的执行顺序? 对象的类中的. _ _ call _ _ ;(为了加括号调用) 对象._ _ new _ _ 对象._ _ init _ _...
2021-07-22 11:31:04
59
原创 Python异常处理
文章目录1、什么是异常1.1 异常处理的三个特征2、为何处理异常3、如何处理异常3.1 语法上的错误: SyntaxError3.2 逻辑上的错误3.2' 针对逻辑上的异常又有两种处理方式3.2.1 错误发生的条件是可以预知的3.2.2 错误发生的条件是不可以预知的1、什么是异常异常是程序发生错误的信号,程序一旦出错就抛出异常,程序的运行随即终止1.1 异常处理的三个特征异常的追踪信息异常的类型异常的内容2、为何处理异常为了增强程序的健壮性,即便是程序运行过程中出错了,也不要终止程序二是捕
2021-07-22 11:30:11
126
原创 Python之元类与class机制分析
文章目录一、一切源自于一句话:python中一切皆为对象。让我们先定义一个类,然后逐步分析二、什么是元类呢?三、class关键字创造类People的步骤类有三大特征1、类名2、类的基类3、执行类体代码拿到类的名称空间4、调用元类一、一切源自于一句话:python中一切皆为对象。让我们先定义一个类,然后逐步分析二、什么是元类呢?元类就是用来实例化产生的类的类关系:元类 —实例化 ---->类 (类的类)class People(object): # 因为每次定义类都要调用class,所以cla
2021-07-19 21:54:49
180
原创 Python之反射
什么是反射:指的是在程序运行过程中可以“动态(不见棺材不落泪)”获取对象的信息。为什么要用反射:如何实现反射:>>> class People:... def __init__(self,name,age,gender):... self.name=name... self.age=age... self.gender=gender实现反射机制的步骤:1、先通过多dir:查看出某一个对象下可以.出哪些属性出来p
2021-07-19 21:50:14
87
原创 Python内置方法
Python内置方法1、什么是内置方法?_ _ 开头并 _ _结果的方法特点是:会在某种情况下自动触发执行2、为什么要使用内置方法?为了定制化我们的类的or对象3、如何使用内置方法_ _ str _ _: 一般在打印的时候使用,然后将本次的返回值(必须是字符串类型)当做本次打印的结果输出class People: def __init__(self, name, age): self.name = name self.age = age #
2021-07-19 17:17:12
149
原创 Python之类的属性查找
属性查找单继承下的属性查找:有了继承关系,对象在查找属性时,先从对象自己的__dict__中找,如果没有则去子类中找,然后再去父类中找……class Foo:... def f1(self):... print('Foo.f1')... def f2(self):... print('Foo.f2')... self.f1()... class Bar(Foo):... def f1(self):...
2021-07-17 16:53:37
471
原创 python 之 继承
1、什么是继承I、继承是一种创建新类的方式,新建的类可以继承一个或多个父类,新建的类可称为子类或派生类,父类又可称为基类或超类,子类会遗传父类的属性。(减少代码冗余的问题)II:需要注意的是:Python支持多继承在Python中,新建的类可以继承一个或多个父类class ParentClass1: #定义父类 passclass ParentClass2: #定义父类 passclass SubClass1(ParentClass1): #单继承;类后面的括号不是用来传参数
2021-07-17 16:43:45
64
转载 绑定方法与非绑定方法
一:绑定方法:特殊之处在于将调用者本身当做第一个参数自动传入1、绑定给对象的方法:调用者是对象,自动传入的是对象2、绑定给类的方法:调用者类,自动传入的是类import settingsclass Mysql: def __init__(self,ip,port): self.ip=ip self.port=port def func(self): print('%s:%s' %(self.ip,self.port)) @
2021-07-16 12:17:16
82
原创 MATLAB字符串类型(char)
字符串类型在MATLAB中,字符串类型由一对单引号 ‘’ 包裹一段文字来定义。标准ASCII字符可以被转换为对应的ASCII码。s1 = 'h';uint16(s1) % 查找ASCII表发现小写字母h的ASCII的值为104字符串在内存中是以字符矩阵的形式存储的,可以对其进行矩阵的索引以及赋值操作。str1 = 'hello';str2 = 'world';str3 = [str1 str2]; % 'helloworld'size(str3) % 得到 [1 10] 第一项.
2021-07-14 21:51:15
7986
原创 Python之property属性
1、property是一个装饰器,是用来绑定给对对象的方法伪造一个数据属性2、说白了就是对于使用者来说:虽然这个东西是一个功能,但是在逻辑上更像是一个数据属性,使用property功能使使用者在逻辑上把这个功能当做数据去使用。3、例子:class People: def __init__(self,name,height,weight): self.name = name self.height = height self.weight # 但是bmi听起来更像是一个数据属性,而不是功
2021-07-14 17:15:06
130
原创 Java用户交互Scanner(持续补充)
文章目录一、next()的用法二、nextLine()的用法三、其他方法一、next()的用法import java.util.Scanner;public class Deemo01 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); // System.in表示接收 System.out.println("使用next方式接收:");
2021-07-14 02:00:18
134
原创 解决在cmd中执行 Javadoc不是内部命令的问题
出现如下错误:一、来到要生成API文档的所在文件夹然后这样直接进入CMD中二、第一步正确之后,仍出现错误进入配置环境变量的设置里找到当初安装Java的文件夹以我自己的电脑举例子:找到这个文件夹,并复制绝对路径返回配置环境变量的设置里点击上边窗口的Path,新建一个环境变量,把绝对路径粘进去。三、结束...
2021-07-13 17:00:09
1055
转载 Python os模块
os模块是与系统操作的一个接口os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径os.chdir("dirname") 改变当前脚本工作目录;相当于shell下cd;相当于CMD窗口下输入cd命令os.curdir 返回当前目录: ('.')os.pardir 获取当前目录的父目录字符串名:('..')os.makedirs('dirname1/dirname2') 可生成多层递归目录;依次创建文件夹os.removedirs('dirname1')
2021-07-05 23:19:51
46
原创 Java之用户输入操作
Java之用户输入操作从键盘获取不同类型的变量:需要用到Scanner类具体实现步骤:导包: import.util.Scanner;Scanner 实例化:Scanner scan = new Scanner(System.in);调用Scanner的相关方法 (next() / nextint() …), 来获取指定类型的变量...
2021-06-25 13:14:42
103
原创 Java 强制转换
Java 强制转换由低到高byte,short,char -> int -> long -> float ->double规则:public class Demo05 { public static void main(String[] args) { int i =128; double b = i; // 强制转换 (类型变量名) 高--低 // 自动转换 低 -- 高 Sy
2021-06-24 11:55:20
48
原创 Python之集合
集合文章目录集合定义了解类型转换内置方法1.合集/并集(|):求两个用户所有的好友(重复好友只留一个)2.交集(&):求两个用户的共同好友3.差集(-):4.对称差集(^) # 求两个用户独有的好友们(即去掉共有的好友)5.值是否相等(==)6.父集:一个集合是否包含另外一个集合6.1 包含则返回True6.2 不存在包含关系,则返回False7.子集集合去重复有局限性其他操作1.长度2.成员运算3.循环其他内置方法其他内置方法定义在{}内用逗号分隔开多个元素,多个元素满足一下三个条件:1.
2021-05-30 21:49:35
113
原创 Python 字典总结
字典@[tocc]创建字典字典时无序的在{}内用逗号分隔开多元素,每一个元素都是key:value的形式,其中value可以是任意类型,而key则必须是不可变类型,通常key应该是字符串类型,因为字符串类型会对value有描述性的功能。d = {'name': 'shen', 'age': 20, 'gender': 'male'}print(d, type(d))>>>{'name': 'shen', 'age': 20, 'gender': 'male'} <cla
2021-05-29 21:30:44
244
原创 Python字符串需要掌握的方法
Python字符串需要掌握的方法string.strip()string.strip() 默认去掉空格,在括号内输入字符就输出去掉字符串两边相应的字符。string.lstrip() 去掉左边的指定字符string.rstrip() 去掉右边的指定字符msg = '***shen****'print(msg.strip("*"))print(msg.lstrip("*"))print(msg.rstrip("*"))>>>shen>>>shen****
2021-05-28 11:24:03
75
原创 Python的格式化输出
Python 的格式化输出1. 基本类型使用 %s、%d:以下是我引用的:# %s占位符:可以接收任意类型的值# %d占位符:只能接收数字print('亲爱的%s你好!你%s月的话费是%d,余额是%d' %('tony',12,103,11))>>>亲爱的tony你好!你12月的话费是103,余额是11使用%s和%d进行print操作时,后面%()里的值必须要与前面一一对应。但是后面可以放变量名字name = 'tony'month = 12amount = 10
2021-05-25 11:40:37
120
原创 Python垃圾回收机制之引用
Python垃圾回收机制 —— 引用只要能够访问到所需要调用的值都是一种引用。直接引用: 形如:x = 10 这种直接赋值的为直接引用单从逻辑层面分析,我们定义变量将变量值存起来的目的是为了以后取出来使用,而取得变量值需要通过其绑定的直接引用(如x=10,10被x直接引用)间接引用:将数值的地址放入像容器一样的列表与字典中进行引用。例如:x = 10list = [‘a’, x] (这里是对10的间接引用)间接引用(如l=[x,],x=10,10被x直接引用,而被容器类型l间接引用
2021-05-24 18:03:15
66
原创 Java数据类型与其取值范围
Java数据类型与其取值范围首先,任何类型的第一个字节的第一位用来表示正负。其次,一个字节有8位。 最后,0归于正数范围。byte类型占用空间: 1字节取值范围: [-2^7, 2^7-1] / [-128, 127] (为什么为7次幂? 答:第一个字节的第一位用来表示正负,所以少一位。 为什么最大取值为 2^7 -1(为什么减一)? 答:0也属于正数,所以要减一)short类型占用空间: 2字节取值范围: [-2^15, 2^15-1] / [-32768, 32
2021-05-23 21:19:46
85
原创 华为手机安装GMS服务
##华为手机安装GMS服务这里留一个备份,以备不时之需。刚买到的华为Mate手机在华为应用商店里没有Play等软件。 但是对于在海外工作学习的人来说有很大的不方便。回复教程如下:学习于油管视频作者。必要文件:(在自己网盘里找)用U盘(只有这两个文件!)链接手机打开 文件管理,里的 U盘储存。解压 Huawei 压缩包到当前文件夹复制 Go。ogle 文件夹 到内部存储 并检查文...
2020-02-19 20:56:49
4036
4
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人