- 博客(35)
- 收藏
- 关注
原创 python安装“包”的几种方式
python安装“包”的几种方式使用pip安装pip install xxxpip install xxx =i https://pypi.douban.com/simple/pip install -r requirements.txt安装zip包文件。解压zip文件, 文件目录下方有一个 setup.py文件,进入目录python setup.py install安装xx.whl文件whl文件是已经编译好的文件,通常在通过第1种方式无法正常安装时(缺少编译库 / 缺少
2020-11-10 21:17:35
519
2
原创 配置MAC电脑用于python开发
配置MAC电脑用于开发安装homebrew,安装方法如下:首先,在MAC电脑底部边栏找到“启动台”,单击,在展示的界面中找到“终端”,单击,在终端中粘贴如下脚本即可,当然你还可以将其存为脚本,并在终端上运行该脚本。#HomeBrew自动安装脚本#cunkai.wang@foxmail.com#路径表.HOMEBREW_PREFIX="/usr/local"HOMEBREW_REPOSITORY="${HOMEBREW_PREFIX}/Homebrew"HOMEBREW_CACHE="${
2020-11-10 21:09:14
659
原创 python 实现二叉树的(先|中|后|层次)序遍历,递归和非递归实现
二叉树的遍历先序遍历# 递归def pre_through(head): if head is None: return print(head.val) pre_through(head.left) pre_through(head.right) # 非递归def pre_through(head): if head is None: return s = list() s.append(head) while head: head = s.pop(0) pr
2020-10-04 16:06:08
174
原创 后端常用数据库的使用MongoDB, Redis, Mysql
后端常用数据库的使用数据库安装 (ubuntu操作系统)mysql安装redis安装mongodb安装mysql 使用 (增删改查)mysql 数据库前置知识: mysql 是一个软件, 它通过 (数据库 + 数据表 + 数据项) 的形式来组织数据, 而我们对数据进行操作时, 操作的是数据库中的数据表中的数据项.为了实现对数据项操作, 下面的增删改查操作都需要定位到数据项mysql 操纵数据库流程建立连接选择操作的数据库对数据库中的数据表进行操作mysql -u<
2020-09-30 11:43:01
769
原创 跨域和单点登录的实现方式
跨域和单点登录的实现方式“域” 是什么?经常听人提起"域"这个术语, 那么域是什么呢? 域 就是 协议和域名和端口的集合体,或者说是 协议, ip 和端口的机会对于两个网址, 这三者有任意一个不相同, 就说它们不在同一"域"下, 而不在同一域下的两个网站的交互, 就会受到浏览器同源策略的约束如何跨域?首先, 网页上有两个html标签是可以正常跨域的, 那就是 <scirpt>和 <img>, 我们可以利用这两个标签访问其他域的资源.除了这两个标签以外, 访问其他域的 ap
2020-09-16 11:32:18
780
原创 python 中正则表达式
正则表达式正则表达式是什么? 我认为正则表达式是一种根据特定语法构造的文字匹配表达式正则表达式语法正则表达式的发明是为了匹配 文字, 当然 文字 是一个很抽象的概念. 下面我们来 具象它.现在我们对计算机中所有的文字进行分类:英文字母 (a…z, A…Z)数字 (0…9)空格和Tab键 (Space 和 Tab)其他字符 (汉字, 法语字母, 日语字母…)例如:#mermaid-svg-itSnFFvEYKasJaZb .label{font-family:'trebuchet m
2020-09-15 23:53:33
274
原创 python中的构造方法和 __new__, __init__
构造方法是什么?没有特别的规定, 一般认为是在类中用来创建对象的方法, 例如在 java 中, 每个类中有一个与类同名的方法, 人们把它称为构造方法 如下. 它的作用是构造并实例化对象. 在python中, 这个功能通过两个函数来实现. 我认为 __new__方法和 __init__方法共同实现了类似于java中构造方法的作用.public class People { People(Integer age, String name) { this.name = name; this.age
2020-09-13 13:27:16
242
原创 python中的 datetime 的使用
python 中 datetime 的使用方法介绍所谓 datetime 其实就是 date + time, date 和 time的集合. 下面介绍使用方法, 常搭配logging记录日志.datefrom datetime import dated = date(2019, 1, 1)d.year # 展现日期的年份d.month # 展现日期的月份d.day # 展现日期的天timefrom datetime import timet = time(9, 9, 9)
2020-09-12 16:41:23
848
原创 python 操纵 excel 简单版
配置环境python3安装教程 windowspandas安装(windows)按下Win(一般为键盘左下角第3个键) + R输入 cmd, 并按下键盘中的 Enter键输入 pip install pandas -i https://pypi.douban.com/simple/ 并按下键盘中的Enter键安装完成后, 就可以编写 python 代码对excel进行操作啦!数据结构DataFrame: 一种类似于二维数组的数据结构, 形式和常用属性如下:import pan
2020-08-30 19:38:08
382
原创 left join, right join, innor join, cross join, 自连接, 全连接
left join将 左表 中的每一行 与 右表 中进行等值连接, 若 左表中连接值和右表中连接值不相等, 保留左表中的行, 本应该填充右表的部分用 NULL补全right join同 left joininner join将一张表中的行中的某个值与另一张表进行等值连接, 如果在另一张表中并未找到等值, 结果中删去这一行.cross join返回 两张关系表的 笛卡尔积自连接基于一张表的 cross join全连接mysql 不支持全连接, 全连接就是左连接 和右
2020-08-30 16:41:42
366
原创 使用python模拟浏览器向服务器发送
使用python模拟浏览器向服务器发送请求常见浏览器请求类型1.get2.post3. head4. delete5. puthttp请求的内容请求行请求头\r\n\r\n请求体示例:GET / Content-type: 'application/json'bodyhttp响应内容http请求和响应内容使用 python 模拟上述的 get请求和post请求并解析响应requests官方文档get请求import requestsresponse
2020-08-12 20:57:57
464
原创 软件测试的分类和常见测试方法的测试用例编写规范
按照项目开发阶段来分类测试方式单元测试 (由测试人员提供测试用例, 或者测试人员编写测试脚本)集成测试 (接口联调, 由开发完成, 将不同模块组合, 测试模块之间连接接口的正确性)测试人员所做的继承测试又被称为接口测试系统测试 (对已经集成好的软件进行测试, 验证功能的正确性, 和是否满足用户需求)功能测试, 性能测试, 兼容性测试回归测试, 冒烟测试 (意思同上)测试需求的提取 --> 测试用例的编写 --> 测试用例的执行–>测试报告的编写验收测试 (系统
2020-08-11 23:37:46
443
原创 web自动化测试(python)
web自动化测试原理使用代码模仿用户操控浏览器与服务器建立http连接并发送请求读取并解析服务器响应数据根据测试用例, 检测bug依赖安装依赖库pip install selenium安装浏览器驱动查看当前浏览器版本方法根据版本匹配下载浏览器驱动下载链接使用方法一下内容建议从selenium官方文档中查看案例from selenium import webdriverdriver.implicitly_wait(10)driver = webdriver.C
2020-07-19 20:33:48
185
原创 python自动化测试之接口测试
python接口测试名词解释接口对于测试后端服务器来说, 接口就是urlrequests一个模拟浏览器向服务器发送请求的工具包postman一个模拟浏览器向服务器发送请求的测试软件测试对象: 后端服务器(基于http请求)测试方式:模拟浏览器建立http连接的行为发出请求得到响应对比响应和预期响应测试工具requests包下载pip install requests使用方法:官方文档链接: https://requests.readt
2020-07-18 00:11:28
172
原创 TCP中的流量控制和拥塞控制
TCP的流量控制TCP传输过程中实际的传输数据单位是字节, 这里为了简化将其称为报文, 并给报文排序号发送方的窗口值不能大于接收方的接收窗口值, 由接收方的主机进行流量控制. 流量控制方法就是不断减小接收窗口值, 当cwnd=0时, 停止让对方发送数据. 此时对方会根据计时器发送零窗口探测报文段来探测接受窗口的窗口值大小,TCP的拥塞控制算法慢开始设置慢开始门限值ssthresh=16每经历一次传输轮次, 滑动窗口大小 cwnd = cwnd * 2, 呈指数增长具体实现是发送方每
2020-07-14 11:08:37
292
转载 Pocoo风格指南(python PEP8)
Pocoo 风格指南所有 Pocoo 项目都遵循 Pocoo 风格指南, Flask 项目也不例外。 Flask 补丁必须 遵循这个指南,同时也推荐 Flask 扩展遵循这个指南。一般而言, Pocoo 风格指南遵循 PEP 8 ,有一些小差异和扩充。总体布局:缩进:4个空格。不使用制表符,没有例外。最大行长:软限制为 79 个字符,不超过 84 个字符。尝试合理放置 break 、 continue 和 return 声明来避免代码过度嵌套。续行:可以使用反斜杠来续行,续行应对齐最后一个点号
2020-07-10 20:45:28
233
原创 数据库的基本概念
数据库面试数据库模型数据模型构成: 数据结构, 数据操作, 数据完整性条件约束概念模型根据用户观点对数据进行建模, 用于数据库设计逻辑模型和物理模型按计算机观点对数据建模, 用于数据库实现关系的完整性实体完整性(主属性非NULL)用户自定义完整性(用户定义的 主键, null, )参照完整性(外键)数据库安全性控制用户身份鉴别口令生物特征智能卡存取控制强制存取控制标记和数据是不可分的对数据库定义密级, 对人定义密级, 高于密级的人不能
2020-07-08 21:04:25
150
原创 mysql为什么会使用B+树来做索引
二叉查询树二叉查询树就是一颗已经排序好的二叉树 不能有相等的元素, 由于树的特性, 它能够使得查找有O(n)的时间复杂度最好的情况下能降到O(lg n), 它的缺点是如果二叉查询树不平衡, 会导致时间复杂度又会重新逼近与O(n). 比如树只有一边分支的情况下, 查询的效率就变得同两边一样了二叉平衡树(AVL)而二叉平衡树就是使得对于除叶节点外的任意节点, 其左右子树的高度差最多为1,...
2020-04-24 22:23:04
218
原创 操作系统中的重要概念
明天更新(2020.4.21)虚拟存储页面置换吞吐量进程, 线程, 协程, 任务调度文件系统, 文件共享磁盘冗余, 数据备份中断和异常进程的状态, 进程同步和死锁存储管理设备硬件管理安全机制分布式操作系统...
2020-04-21 22:47:35
1443
原创 数据库的事物和隔离级别
事物的基本属性(ACID)原子性: 事务涉及的多步操作要么全部执行, 要么就回滚导致全部不执行一致性: 事务执行的中间过程, 对其他事务不可见,隔离性: 事务和事务之间独立执行, 互不干扰持久性: 事务提交后, 事务更新的数据将被写入数据库中, 不可再回滚很多人区分不了原子性和一致性, 我是这样理解的, 正是因为事务的多步操作只能要么全部执行, 要么全部不执行, 才保证了事物的一致性...
2020-04-21 22:38:01
123
原创 TCP的流量控制和拥塞控制
拥塞控制滑动窗口根据网络拥塞情况, 而调节, 从而调节发送方的传输数据的速率怎么判断网络拥塞ACK的多次冗余确认, 也就是数据包丢失, 学过计网的人应该知道这意味着什么流量控制活动窗口根据接收方的处理能力情况而调节, 从而调节数据的传输速率注意: 这里面接收方和发送方是相对的, 发送方也可能是接收方怎么判断数据处理能力在假设网络状态很好的情况下, 决定滑动窗口大小的因素就变成了...
2020-04-21 17:07:39
91
原创 java接口回调
什么是java中的接口回调?其实就是用一个接口变量来调用实现了该接口的类中的接口方法和常量- 步骤如下1. 声明接口变量2. 用接口变量实例化一个对象3. 通过接口变量调用对象中的方法(必须是接口方法)interface showMessage {void show(String s);}class TV implements showMessage { public vo...
2019-05-13 21:25:03
168
原创 python中的深拷贝和浅拷贝和赋值拷贝
python中的深拷贝和浅拷贝 import copy a = [1, 2, 3,4, [‘a’, ‘b’]]b = a.copy()#就是浅拷贝c = a#给a的值贴上一个c的标签,和a的地位平等d = copy.copy(a)#浅拷贝e = copy.deepcopy(a)#深拷贝下面我们更改a的值,看一下b,c,d,e的值的更改情况## 我们将a[...
2019-04-24 23:43:24
130
原创 计算机中的各种编码
计算机中的编码在很久很久以前,计算机还是8位的(现在的计算机多是64位的或者32位的).在那个时候编码字符就只能使用8位二进制数,因此就只能编码128个字符(这就是传说中的 ASCII码 )然后随着计算机的发展,计算机的应用越来越广泛,这导致了一些问题.例如中国人编写的中文就是GBK系列编码,美国人可能有一套编码编码英语,但由于两个国家之间没有经过协商,就有可能造成编码冲突.举个例子:美国人...
2019-04-20 10:55:19
3477
原创 java中protected权限和友好权限
java中protected权限和友好权限声明protected权限的变量和方法允许不在同一包中的类访问不声明权限(友好)的变量和方法只能被当前包下的类所访问
2019-04-20 10:19:52
1920
2
原创 Python中的 *args 和 *kwargs
Python中的 *args 和 *kwargs** 其实讲的就是Python中的一系列值的未知参数***args接收一系列值,可以假设用将这些值用一个数组存储起来,当然使用方式也是和数组一样的,例子def say_hello(*names):for name in names:#原因同下print(‘hello’,name)#这里由于笔者太菜,不会markdown缩进,请读者注意...
2019-04-19 15:09:38
117
原创 ISO/OSI模型和TCP/IP模型
ISO/OSI协议表示层数据格式变化,翻译0和1数据加密解密,如密码的加密,接受信息的解密数据的压缩和恢复(处理图片和视频等等)协议 : JPEG,ASCII会话层向用户进程提供建立连接,并在连接上传输数据建立,管理,终止会话使用校验点可使会话在通信失效时从校验点/同步点继续恢复通信,实现数据同步(适用于传输大文件)协议 : ADSP,ASP传输层负责主机中两个进程的通信...
2019-04-14 19:22:49
364
原创 markdown语法
本文仿照 https://www.jianshu.com/p/191d1e21f7ed“# ”数目表示标题的数目,注意空格(下面分别是加一个和两个“#号的效果”)Markdown语法标题“*”号,表示对字符进行特殊处理,用两个星号包围字符串表示加粗加粗字体倾斜字体,用一个“*”号包围一个字符串倾斜字体自然,斜体且加粗就是用三个“*”号包围一个字符串斜体加粗内容删除线,用两个“...
2019-04-14 15:25:33
99
原创 python中的字符串
字符串首先要明白一点,计算机中的所有字符串都是二进制表示的,空字符串 None 也是二进制表示的。字符串的编码 在很久以前,计算机cpu是8位的,也就是只能表示256个字符,使用<b>ASCII</b>编码 现在,计算机多是64位的,采用<b>Unicode:</b>全世界统一的编码,是的,已经能够对全世界所有的字符进行编码。 -...
2019-04-12 11:22:54
94
原创 python文件操作
Python文件操作文件创建-将文件用‘w+’ ,就是追加模式打开 文件的带开模式自行百度,大致分为,读取模式,写入模式,追加模式 就是创建了一个文件open(file,‘w+’)文件删除-每一个文件都有一个name属性f = open(filename, ‘w+’)print(f.name)-故当删除文件时,依靠文件的name属性删除,并且需要借助python的os模块(...
2019-04-12 11:00:28
241
原创 面向对象编程
对象什么是对象?-对象可以说是Python中的class类什么是对象实例-准确来说,对象实例才是人么通常理解的对象。-什么是面向对象编程-面向对象编程实际上是面向对象实例编程怎么学习对象-学习对象实际上是学习对象的属性和方法杂谈什么是人?人其实就是对象,这个对象有他的名字、他的性别、他的年龄······这些就是一个对象的属性。人这个对象他还会干一些事情,比如说吃饭、睡觉、...
2019-01-09 17:40:59
106
原创 软云实验室第二次作业
tcp与udp 是两种网络传输协议,前者的稳定性要高,也就是传达时能保证数据不丢失,但是传输效率较低。后者的传输效率较快,但是不能保证传输过程中数据不丢失。我们在书中常见的http、https和ftp 等传输协议就是基于tcp/ip协议的上层协议,因为在超文本传输和文件传输时要求传输的数据不能丢失。但smtp邮件传输协议就是基于udp的上层协议,也就是说,你写的信不一定能寄到收信人手中哦。另外,...
2018-12-08 16:17:27
221
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人