自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(46)
  • 收藏
  • 关注

原创 keybd_event 使用方法

https://blog.youkuaiyun.com/lihuarongaini/article/details/101298063

2020-10-19 11:20:47 361

转载 APP测试

一、安全测试1.软件权限1)扣费风险:包括短信、拨打电话、连接网络等。2)隐私泄露风险:包括访问手机信息、访问联系人信息等。3)对App的输入有效性校验、认证、授权、数据加密等方面进行检测4)限制/允许使用手机功能接入互联网5)限制/允许使用手机发送接收信息功能6)限制或使用本地连接7)限制/允许使用手机拍照或录音8)限制/允许使用手机读取用户数据9)限制/...

2019-09-09 13:05:53 400

原创 正则表达式匹配:密码必须包含大小写字母、数字和特殊字符(长度大于6位)

import redef checkPwd(pwd): compilePwd=re.compile('^.*(?=.*[0-9])(?=.*[A-Z])(?=.*[a-z])(?=.*[!@#$%^&*?])\w{6,}') if compilePwd.match(pwd): return True else: return Fa...

2019-09-07 14:46:01 41427

转载 OSI七层网络模型、五层协议模型详解

一、OSI七层模型OSI七层协议模型主要是:应用层(Application)、表示层(Presentation)、会话层(Session)、传输层(Transport)、网络层(Network)、数据链路层(Data Link)、物理层(Physical)。三、五层体系结构五层体系结构包括:应用层、运输层、网络层、数据链路层和物理层。五层协议只是OSI和TCP/IP的综合,实际应用...

2019-08-26 21:48:29 4140

转载 浏览器输入一个URL地址访问的全过程

1.根据域名到DNS中找到IP2.根据IP建立TCP连接(三次握手)3.连接建立成功发起http请求4.服务器响应http请求5.浏览器解析HTML代码并请求html中的静态资源(js,css)6.关闭TCP连接(四次挥手)7.浏览器渲染页面一、解析DNS域名1.浏览器查找自己的DNS缓存,如果有直接返回,如果没有进行步骤二2.操作系统查找自己的DNS缓存,如果...

2019-08-26 11:18:59 2508

转载 Python操作数据库,装饰器管理数据库的的打开和关闭。

import pymysqlclass ConDb(): def openClose(fun): def run(self,sql=None): #创建数据库连接 db=pymysql.connect(host='localhost',port=3306 ,user='root',password='root',db='l...

2019-08-26 10:35:40 913

原创 http请求幂等性

最近写了一个项目的接口文档,就是简单的用postman发发请求看看响应。所以重新补了一下http请求的知识。这篇博客就是介绍下幂等性。幂等性:无论调用多少次都不会产生不同副作用(数据变更)的http方法。重复发送同一个请求多次,结果同发送一次。HTTP GET(幂等)get用于获取资源,不管调用多少次接口,返回结果保持不变,不会改变资源。HTTP DELETE(幂等)d...

2019-07-27 14:29:05 621

转载 Linux常用指令

1.查进程 ps命令查找与进程相关的PID号: ps a 显示现行终端机下的所有程序,包括其他用户的程序。 ps -A 显示所有程序。 ps c 列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。 ps -e 此参数的效果和指定"A"参数相同。 ps e 列出程序时,显示每个程序所使用的环境变量。 ps f 用ASC...

2019-07-01 21:31:28 163

转载 什么是缓存,缓存策略有哪些?

1、什么是缓存? ☞ 缓存就是数据交换的缓冲区(称作:Cache),当某一硬件要读取数据时,会首先从缓存汇总查询数据,有则直接执行,不存在时从内存中获取。由于缓存的数据比内存快的多,所以缓存的作用就是帮助硬件更快的运行。 ☞ 缓存往往使用的是RAM(断电既掉的非永久存储),所以在用完后还是会把文件送到硬盘等存储器中永久存储。电脑中最大缓存就是内存条,硬盘上也有16M或者32...

2019-06-30 15:46:22 14035 1

转载 如何利用UDP实现可靠传输(RUDP)

4、UDP的三角制约原则其实在实时通信领域存在一个三角平衡关系——成本、质量和时延三者的制约关系:也就是说投入的成本、获得的质量和通信的时延之间是一个三角制约 (LEQ) 关系,所以实时通信系统的设计者会在这三个制约条件下找到一个平衡点,TCP 属于通过增大延迟和传输成本来保证质量的通信方式,UDP 是通过牺牲质量来保证时延和成本的通信方式,所以在一些特定...

2019-06-29 22:07:00 4148

原创 写代码判断IP地址

1、python有一个模块可以判断IP地址是否合理。import IPytry: IPy.IP('123.123.123.123') print(True) except exception as e: print(False)2、利用正则表达式import redef check_ip(ipAddr): compile_ip=re.co...

2019-06-29 21:01:38 720

原创 SQL 存储过程

一、存储过程的定义存储过程简单来说,就是为以后的使用而保存的一条或多条MySQL语句的集合。可将其视为批文件,虽然它们的作用不仅限于批处理。二、为什么使用存储过程通过把处理封装在容易使用的单元中,简化复杂的操作。 由于不要求反复建立一系列处理步骤,这保证了数据的完整性。如果所有开发人员和应用程序都使用同一(试验和测试)存储过程,则所使用的代码都是相同的。这一点的延伸就是防止错误。需要执行...

2019-06-17 22:12:54 157

转载 抽象类和接口的含义以及区别

抽象类是什么:抽象类不能创建实例,它只能作为父类被继承。抽象类是从多个具体类中抽象出来的父类,它具有更高层次的抽象。从多个具有相同特征的类中抽象出一个抽象类,以这个抽象类作为其子类的模板,从而避免了子类的随意性。(1) 抽象方法只作声明,而不包含实现,可以看成是没有实现体的虚方法(2) 抽象类不能被实例化(3) 抽象类可以但不是必须有抽象属性和抽象方法,但是一旦有了抽象方法,就一定...

2019-06-13 21:56:01 235

原创 [编程题]小Q的歌单 (python动态规划版)

链接:https://www.nowcoder.com/questionTerminal/f3ab6fe72af34b71a2fd1d83304cbbb3来源:牛客网[编程题]小Q的歌单热度指数:9845 时间限制:1秒 空间限制:32768K 算法知识视频讲解 小Q有X首长度为A的不同的歌和Y首长度为B的不同的歌,现在小Q想用这些歌组成一个总长度正好为K的歌单,每首歌最多只能在...

2019-06-12 13:09:59 571

原创 python[编程题]贪吃的小Q

小Q的父母要出差N天,走之前给小Q留下了M块巧克力。小Q决定每天吃的巧克力数量不少于前一天吃的一半,但是他又不想在父母回来之前的某一天没有巧克力吃,请问他第一天最多能吃多少块巧克力输入描述:每个输入包含一个测试用例。每个测试用例的第一行包含两个正整数,表示父母出差的天数N(N<=50000)和巧克力的数量M(N<=M<=100000)。输出描述:输出一个数表示小Q第...

2019-06-11 16:48:52 465

原创 [编程题] 翻转数列

时间限制:1秒空间限制:32768K小Q定义了一种数列称为翻转数列:给定整数n和m, 满足n能被2m整除。对于一串连续递增整数数列1, 2, 3, 4..., 每隔m个符号翻转一次, 最初符号为'-';。例如n = 8, m = 2, 数列就是: -1, -2, +3, +4, -5, -6, +7, +8.而n = 4, m = 1, 数列就是: -1, +2, -3, + 4....

2019-06-11 08:45:01 520

原创 [编程题] 纸牌游戏

时间限制:1秒空间限制:32768K牛牛和羊羊正在玩一个纸牌游戏。这个游戏一共有n张纸牌, 第i张纸牌上写着数字ai。牛牛和羊羊轮流抽牌, 牛牛先抽, 每次抽牌他们可以从纸牌堆中任意选择一张抽出, 直到纸牌被抽完。他们的得分等于他们抽到的纸牌数字总和。现在假设牛牛和羊羊都采用最优策略, 请你计算出游戏结束后牛牛得分减去羊羊得分等于多少。输入描述:输入包括两行。第一行...

2019-06-10 21:54:06 1017

原创 [编程题]字符串压缩算法

输入一串字符,请编写一个字符串压缩程序,将字符串中连续出现的重复字母进行压缩,并输出压缩后的字符串。例如:aac 压缩为 1acxxxxyyyyyyzbbb 压缩为 3x5yz2b输入描述:任意长度字符串输出描述:压缩后的字符串示例1输入xxxxyyyyyyzbbb输出3x5yz2bimport syss = sys.stdin.re...

2019-06-10 10:34:08 1464

原创 求出1~13的整数中1出现的次数

1. 如果第i位(自右至左,从1开始标号)上的数字为0,则第i位可能出现1的次数由更高位决定(若没有高位,视高位为0),等于更高位数字乘以当前位数的权重10的i-1次方。2. 如果第i位上的数字为1,则第i位上可能出现1的次数不仅受更高位影响,还受低位影响(若没有低位,视低位为0),等于更高位数字乘以当前位数的权重10的i-1次方+(低位数字+1)。3. 如果第i位上的数字大于1,则第i位上可...

2019-06-09 21:36:49 508

原创 剑指offer java 输出斐波那契数列的第n项(从0开始,第0项为0)。

递归版本:(运行时间1387ms)import java.util.ArrayList;import java.util.List;public class Solution { public int Fibonacci(int n) { // TODO Auto-generated method stub if(n==0) { return 0; }else ...

2019-06-01 16:27:55 352

原创 python中的赋值与深浅拷贝

在python中,只有在int和字符串中,=与深浅拷贝的结果一样 ,都是连内存地址一起‘复制’了。而在list,dict,set中,深浅拷贝并没有复制‘地址’。‘复制’内存地址的结果就是,之后的操作会影响原来的对象。1.int型>>> import copy>>> a=1>>> b=a #赋值>...

2019-05-29 21:33:05 174

原创 python 中的 is 和==

在python中只有当比较对象都为数字或者字符串的时候,is和==比较的结果才相等。这是因为==比较的仅仅是值,而is还比较了对象内存地址。所以is的结果一定是==的结果,反过来则不然,1.数字>>> a=1>>> b=1>>> a==b #值相等True>>> id(a)1473881184&...

2019-05-29 21:10:46 156

原创 母牛从3~7岁初每年会生产1头小母牛,10岁后死亡(10岁仍然存活),假设初始有一头刚出生的母牛,请问第n年有多少头母牛?(年从第一年开始计数)

题目:母牛从3~7岁初每年会生产1头小母牛,10岁后死亡(10岁仍然存活),假设初始有一头刚出生的母牛,请问第n年有多少头母牛?(年从第一年开始计数)注:第三年初会出生 第一头母牛,故第三年有两头母牛。第五年初,第三年出生的母牛会生产,故第五年有五头母牛。(岁数是虚岁)示例:分析 :从第三年开始生小牛,十一岁死亡。我们可以利用一个列表记录下每一年1-11岁的牛的分别的个数。...

2019-05-28 17:31:12 1126

原创 试判断一个消息队列是否可能死锁。

消息队列的缓冲区长度为L单位,读操作为每次从缓冲区读取R单位,写操作为每次写入缓冲区W单位。消息队列会持续进行读写操作。具体为写操作会在缓冲区还剩余大于等于W单位空间时保持进行,当缓冲区内空间小于W时,写操作停止,等待读操作进行;类似的,读操作会在缓冲区可读内容大于等于R时保持进行,当可读内容小于R时,读操作停止,等待写操作进行。读写都是原子操作。若读写操作均无法进行,定义此时状态为死锁。...

2019-05-28 09:46:46 981

原创 牛客网输入输出问题(python)

1.字符串单行:import sysline = sys.stdin.readline().strip()print(line)#输出的字符串多行:import sysif __name__ == "__main__": data=[]while True: line = sys.stdin.readline().strip() if no...

2019-05-26 16:12:25 19387 4

原创 优快云编写文章,空白删除不掉的解决办法。

用优快云记录自己的学习知识确实是一个很好的方法。但是编辑的时候如果发现自己这一部分要删除,或者是多按了下enter键,最后自己家的内容又不能把空白填满就会变得很丑。今天来教大家一个小窍门。右击空白行-检察元素,出现下面的界面。然后定位到自己要删除的空白行,右击删除就好啦。...

2019-05-25 15:53:16 742

原创 测试用例设计(可以学会设计所有对象的测试用例)

以前都是把自己的笔记写在word里,前段时间找实习才发现博客和GitHub也是很重要的一部分。测试一个软件或者网页或者一个产品,大的方面一般分为下面几个方面。1.功能测试2.性能测试3.界面测试4.安全性测试5.兼容性测试6.可用性测试每次就按照以上几个方面涉及测试用例就好啦。例子1.测试登录网页。a.功能测试0. 什么都不输入,点击提交按钮...

2019-05-25 15:45:37 316

原创 四则运算表达式part2(根据后缀表达式计算数值)

part1已经将中缀表达式(四则运算表达式)转换成了后缀表达式。这一部分主要是讲利用后缀表达式求值。四则运算表达式:1+2*3+(4*5+6)-10的后缀表达式为123*+45*6++10-。具体看part1。将后缀表达式依次入栈stack。1.数字直接入栈stack=【1,2,3】。2.遇操作符*出栈两个元素【3,2】,计算出栈第二个元素(操作符)出战第一个元素。此处计算出为2*...

2019-05-24 21:56:21 572

原创 四则运算表达式part1(中缀表达式转后缀表达式)

后续利用后缀表达式及代码实现看part2例子:1+2*3+(4*5+6)-10利用两个栈数字栈numstack和操作符栈opstack。从左向右遍历四则表达式,遇到数字直接入数字栈,遇到操作符如果操作符栈为空则直接入操作符栈,否则判断操作符栈顶元素优先级是否比当前操作符低。如果低的话就入操作符栈,如果高得话就将操作符栈元素出栈压入数字栈,一直出栈到操作符栈顶元素比当前元素低或者栈顶元素为左...

2019-05-24 21:32:50 310

原创 输入一个自然数n,求表达式 f(n) = 1! × × 2! × × 3! × × ..... × × n! 的结果末尾有几个连续的0?

是在做小红书笔试题的时候发现的一道题目。用动态规划做虽然答案正确但是时间复杂度超了。下面的代码是动态规划方法。def shushu(n): nums=[1] re=[1] for i in range(1,n+1): nums.append(nums[-1]*len(nums)) re.append(nums[-1]*re[-1]...

2019-05-24 17:19:14 1447

原创 Linux定位查找命令(which where locate find)

Linux 定位查找命令which 可执行文件名称:确认系统中是否安装了指定的软件 whereis [选项] 文件:定位可执行文件、源代码文件、帮助文件在文件系统中的位置-b:定位可执行文件-m:定位帮助文件-s:定位源代码文件-u:搜索默认路径下除可执行文件、源代码文件、帮助文件以外的其它文件-B:指定搜索可执行文件的路径-M:指定搜索帮助文件的路径-S:指定搜索...

2019-05-24 17:04:47 762

原创 Linux系统用户账号的管理

Linux系统用户账号的管理添加新的用户账号:useradd 选项 用户名-c comment 指定一段注释性描述。-d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。-g 用户组 指定用户所属的用户组。-G 用户组,用户组 指定用户所属的附加组。-s Shell文件 指定用户的登录Shell。-u 用户号 指定用户的用户号,如果同时有-o选...

2019-05-24 15:40:11 396

原创 Linux 文件操作指令合集(ls mkdir rm mv cat nl less more head tail)

Linux 文件基本属性更改文件属组:chgrp [-R] 属组名 文件名 (-R递归更改文件属组) 更改文件属组、属主:chown [-R] 属主名:属组名 文件名 更改文件的属性:chmod [-R] xyz文件或目录 各权限对照表(r:4; w:2 x:1)Linux 文件与目录管理列出目录:lsls –a:列出全部的文件,包括隐藏文件。ls –A:同上,不包括隐藏文...

2019-05-24 12:55:36 210

翻译 IP数据报首部格式

1.IP数据报首部的固定部分中的各字段(1)版本占4位,指IP协议的版本。通信双方使用的IP协议的版本必须一致。目前广泛使用的IP协议版本号为4(即IPv4)。关于以后要使用的IPv6(即版本6的IP协议),我们将在后面的4.6节讨论。(2)首部长度占4位,可表示的最大十进制数值是15。请注意,首部长度字段所表示数的单位是32位...

2019-05-07 21:35:08 8906 1

原创 python json数据类型转换 (把两个文件中的内容输出为字典,并输出两个字典的差异)

import jsonf1=open(r'C:\Users\jxiong\Desktop\资料\代码\json实验\1.txt','r')f2=open(r'C:\Users\jxiong\Desktop\资料\代码\json实验\2.txt','r')for i in f1.readlines(): dict1 = json.loads(i)for i in f2.r...

2019-04-23 15:44:04 641 1

转载 在浏览器中输入一个URL的地址会发生什么?

摘要: 我们使用浏览器去浏览网址但是我们却不知道这个过程中到底发生了什么,本篇博文就是讲述在浏览器输入url之后到浏览器展现出页面这一过程中都是发生了什么,是如何发生的。DNS域名解析 -> 建立TCP连接 -> 发送HTTP请求 -> 服务器处理请求 -> 返回响应结果 -> 关闭TCP连接 -> 浏览器解析HTML -> 浏览器布局...

2019-04-22 09:42:36 1100 1

转载 SQL优化,提升性能的tips。

问题的提出 在应用系统开发初期,由于开发数据库数据比较少,对于查询SQL语句,复杂视图的的编写等体会不出SQL语句各种写法的性能优劣,但是如果将应用系统提交实际应用后,随着数据库中数据的增加,系统的响应速度就成为目前系统需要解决的最主要的问题之一。系统优化中一个很重要的方面就是SQL语句的优化。对于海量数据,劣质SQL语句和优质SQL语句之间的速度差别可以达到上百倍,可见对于一个系统不是简单地...

2019-04-16 22:08:35 258

原创 读一个文件中词频最高的5个词(python)

def getText(): txt=open(r'C:\Users\jxiong\Desktop\xu\1.txt','r',encoding='utf-8').read() txt=txt.lower() for ch in "~@#$%^&*()_-+=<>?/,.:;{}[]|\'""": txt...

2019-04-10 11:04:35 2288

转载 操作系统 内存管理

对于计算机系统而言,操作系统充当着基石的作用,它是连接计算机底层硬件与上层应用软件的桥梁,控制其他程序的运行,并且管理系统相关资源,同时提供配套的系统软件支持。对于专业的程序员而言,掌握一定的操作系统知识比不可少,因为不管面对的是底层嵌入式开发,还是上层的云计算开发,都需要使用到一定的操作系统相关知识。内存管理有哪几种方式分段和分页的区别是什么什么是虚拟内存什么是内存碎片什么是内碎...

2019-04-06 17:11:02 180

原创 python+selenium模拟邮箱登录(小白入门)

首先需要安装一下selenium,安装非常的简单了,直接在终端pip就好了。因为要登录网站,所以必须要安装浏览器驱动。这个是谷歌driver的安装地址:http://chromedriver.storage.googleapis.com/index.html各个版本对应关系如下:ChromeDriver v2.39 (2018-05-30)----------Supports Ch...

2019-04-06 16:01:28 1013

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除