- 博客(47)
- 收藏
- 关注
原创 961. 重复 N 次的元素
在大小为 2N 的数组 A 中有 N+1 个不同的元素,其中有一个元素重复了 N 次。返回重复了 N 次的那个元素。示例 1:输入:[1,2,3,3]输出:3示例 2:输入:[2,1,2,5,3,2]输出:2示例 3:输入:[5,1,5,2,5,3,5,4]输出:5提示:4 <= A.length <= 100000 <= A[i] < 10000...
2018-12-23 13:26:21
332
转载 API说明书规范
转自:https://www.cnblogs.com/WangHuaiSheng/p/8961949.htmlAPI说明书规范1 前言1.1 编写目的信息系统不可避免会与三方系统产生交互,本文将会定义信息系统体系下所有接口文档的一些通用约定。API设计开发完成后,在保证API完整性和稳定性的情况下,需要对API接口进行详细的说明,本文档将约定如何对API接口进行说明。...
2018-12-16 17:40:50
809
转载 爬虫与反爬、加密算法
转自: http://www.cnblogs.com/woaixuexi9999/p/9392964.html爬虫与反爬、加密算法网络爬虫网络爬虫,是一个自动提取网页的程序,它为搜索引擎从万维网上下载网页,是搜索引擎的重要组成。但是当网络爬虫被滥用后,互联网上就出现太多同质的东西,原创得不到保护。于是,很多网站开始反网络爬虫,想方设法保护自己的内容。他们根据ip访问频率,浏览网页速度,...
2018-12-16 17:34:48
833
1
原创 268. 缺失数字
题目:给定一个包含 0, 1, 2, …, n 中 n 个数的序列,找出 0 … n 中没有出现在序列中的那个数。示例 1:输入: [3,0,1]输出: 2示例 2:输入: [9,6,4,2,3,5,7,0,1]输出: 8说明:你的算法应具有线性时间复杂度。你能否仅使用额外常数空间来实现?方法一:class Solution: def missingNumber(se...
2018-12-16 08:56:26
232
原创 922. 按奇偶排序数组 II
题目:给定一个非负整数数组 A, A 中一半整数是奇数,一半整数是偶数。对数组进行排序,以便当 A[i] 为奇数时,i 也是奇数;当 A[i] 为偶数时, i 也是偶数。你可以返回任何满足上述条件的数组作为答案。示例:输入:[4,2,5,7]输出:[4,5,2,7]解释:[4,7,2,5],[2,5,4,7],[2,7,4,5] 也会被接受。提示:2 &amp;lt;= A.length...
2018-12-16 08:35:28
173
转载 fileinput模块读取文件
fileinput模块可以对一个或多个文件中的内容进行迭代、遍历等操作。该模块的input()函数有点类似文件readlines()方法,区别在于前者是一个迭代对象,需要用for循环迭代,后者是一次性读取所有行。用fileinput对文件进行循环遍历,格式化输出,查找、替换等操作,非常方便。【典型用法】import fileinputfor line in fileinput.input...
2018-12-06 13:37:05
1227
原创 windows/linux后台执行命令
后台执行是经常要用到的命令 ,收集了常用的进程管理命令,记录下来便于以后使用Windows:启动后台执行start /b + 命令如 start /b python test.py查看进程tasklist杀进程taskkill /im python.exe /t /fLinux启动后台执行命令 + &amp;如:python test.py &amp;查看进程ps,可...
2018-12-04 09:32:26
737
原创 Django 使用Ajax验证邮箱
今天在给博客做注册功能,在找回密码验证邮箱时,选择使用Ajax异步验证是否已经注册,好久不用Ajax,都快忘完了,磕磕绊绊的折腾了半天,才搞好,遇到问题都是在网上找各位大神的博客,这次也做个详细的记录,也为后来人贡献一份力量!1, 创建表单,2,配置路由、视图视图函数,3,发送Ajax请求,1,创建表单创建表单就很简单了,form表单,填好请求的地址,加上csrf验证,第一个inp...
2018-12-02 19:42:03
447
转载 requests请求详解(转)
发送请求使用 Requests 发送网络请求非常简单。一开始要导入 Requests 模块:import requests然后,尝试获取某个网页。本例子中,我们来获取 Github 的公共时间线:r = requests.get(‘https://api.github.com/events’)现在,我们有一个名为 r 的 Response 对象。我们可以从这个对象中获...
2018-11-30 19:10:49
1224
原创 8.字符串转换整数 (atoi)
8.字符串转换整数 (atoi)请你来实现一个 atoi 函数,使其能将字符串转换成整数。首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止。当我们寻找到的第一个非空字符为正或者负号时,则将该符号与之后面尽可能多的连续数字组合起来,作为该整数的正负号;假如第一个非空字符是数字,则直接将其与之后连续的数字字符组合起来,形成整数。该字符串除了有效的整数部分之后...
2018-11-30 10:51:03
826
原创 125. 验证回文串
文章已同步更新到本人个人博客 跳转链接125. 验证回文串给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。说明:本题中,我们将空字符串定义为有效的回文串。示例 1: 输入: "A man, a plan, a canal: Panama" 输出: true 示例 2: 输入: "race a car" 输...
2018-11-30 10:00:59
131
原创 242.有效的字母异位词
本文章已同步更新到我的个人博客,欢迎访问跳转链接今天想多刷几道题,上一篇,解题、优化加上发博客,用来一个小时,为了省时间简单的题就直接贴代码了。有效的字母异位词给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的一个字母异位词。示例 1:输入: s = "anagram", t = "nagaram"输出: true示例 2:输入: s = "rat", t = ..
2018-11-30 09:34:33
197
原创 LeetCode解题 387. 字符串中的第一个唯一字符
题目描述:给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。案例:s = &quot;leetcode&quot;返回 0.s = &quot;loveleetcode&quot;,返回 2.注意事项:您可以假定该字符串只包含小写字母。这道题很容易做出来,但是想要提交通过,就必须降低时间复杂度,否则会超时。class Solution: &quot;&q
2018-11-30 09:14:34
1075
1
原创 Django使用中间件进行流量统计
为了统计网站访问流量,计划做一个访问信息统计,配置:Ubuntu18.4,阿里云服务器,已经运行的Django项目(可以现在本地测试),为了便于查看,本地最好安装redis desk manager客户端,客户端连接云服务器流程,可以看另一篇文章:redis desk manager 远程连接阿里云服务器Redis服务(Ubuntu18.4)思路:利用Django所有请求都要经过中间件的特点...
2018-11-27 09:18:20
1388
1
原创 redis desk manager 远程连接阿里云服务器Redis服务(Ubuntu18.4)
云服务端1,云服务器上安装好Redis;2,进入redis配置文件路径修改redis.conf文件sudo vim /etc/redis/redis.conf4,搜索找到 bind 127.0.0.1,注释掉;5,找到protected-mode,yes改为no,6,找到requirepass ,设置数据库登录密码,7,保存退出,重启redis服务,service redis-se...
2018-11-26 21:39:13
953
转载 RESTful API 最佳实践
RESTful 是目前最流行的 API 设计规范,用于 Web 数据接口的设计。它的大原则容易把握,但是细节不容易做对。本文总结 RESTful 的设计细节,介绍如何设计出易于理解和使用的 API。一、URL 设计1.1 动词 + 宾语RESTful 的核心思想就是,客户端发出的数据操作指令都是"动词 + 宾语"的结构。比如,GET /articles这个命令,GET是动词,/articl...
2018-11-19 20:33:09
192
转载 什么是RESTful API?
要弄清楚什么是RESTful API,首先要弄清楚什么是REST。REST – REpresentational State Transfer,英语的直译就是“表现层状态转移”。如果看这个概念,估计没几个人能明白是什么意思。那下面就让我来用一句人话解释一下什么是RESTful:URL定位资源,用HTTP动词(GET,POST,PUT,DELETE)描述操作。Resource:资源,即数据。Re...
2018-11-19 15:12:04
185
转载 B/S、C/S模式介绍
B/S、C/S模式介绍1.B/S模式B/S(Browser/Server,浏览器/服务器)方式的网络结构。①、客户端统一采用浏览器如:Netscape和IE,通过Web浏览器向Web服务器提出请求,由Web服务器对数据库进行操作,并将结果传回客户端。②、B/S结构简化了客户机的工作,但服务器将担负更多的工作,对数据库的访问和应用程序的执行都将在这里完成。即当浏览器发出请求后,其数据请求、加...
2018-11-19 15:01:47
4113
原创 数据结构与算法解题:合并两个有序链表
数据结构和算法,是编程的基础,想要提高编程能力,这是绕不开的坎,为了练习算法,在Codewars和LeetCode上刷了一些难度级别为easy的题,代码都保存成py文件了,时间久了,积累的多了,有些乱,接下了打算逐步把它们搬到博客上来,整理一下,便于查找复习。废话少说,开工!试题1、将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例:输入:1-...
2018-11-18 20:38:58
709
原创 数据结构之单向链表
链表(Linked list)是一种常见的基础数据结构,是一种线性表,但是不像顺序表一样连续存储数据,而是在每一个节点(数据存储单元)里存放下一个节点的位置信息(即地址)。链表可以分为单向链表、单向循环链表、双向链表单向链表也叫单链表,是链表中最简单的一种形式,它的每个节点包含两个域,一个信息域(元素域)和一个链接域。这个链接指向链表中的下一个节点,而最后一个节点的链接域则指向一个空值。...
2018-11-18 18:37:26
580
转载 转:Django 源码阅读(一):概览从入口到请求到响应
转载:Django 源码阅读(一):概览从入口到请求到响应————作者:hongweipeng起步在我研究完 django 的自动加载机制后,有了阅读 django 源码的想法。那就看看吧,也不知道能坚持到什么地方。我阅读的版本也是我正在使用的 1.10.5 版本,算是比较新的了。一般运行 django 程序都是通过: python manage.py runserver 开始的,那我们就从...
2018-11-17 23:11:31
296
转载 负载均衡之TCP连接复用与缓冲
转自:此处负载均衡技术通过设置虚拟服务器IP(VIP),将后端多台真实服务器的应用资源虚拟成一台高性能的应用服务器,通过负载均衡算法,将大量来自客户端的应用请求分配到后端的服务器进行处理。负载均衡设备持续的对服务器上的应用状态进行检查,并自动对无效的应用服务器进行隔离,实现了一个简单、扩展性强、可靠性高的应用解决方案。解决了单台服务器处理性能不足,扩展性不够,可靠性较低的问题。2.1 TCP连...
2018-11-17 17:17:35
2156
原创 部署uWSGI报错:no app loaded. going in full dynamic mode
运行uWSGI服务是报错 下载安装uwsgi-plugin-python,安装失败,卸载uwsgi,sudo apt-get remove uwsgisudo apt-get update重新安装uwsgisudo apt-get install uwsgisudo apt-get install uwsgi-plugin-python sudo pi...
2018-11-17 08:36:44
2913
转载 django 的请求处理部分----WSGIHandler 源码分析 django1.5.5
转自:Django的请求处理部分从这里拉开django框架的帷幕主要涉及的类:django.core.handlers.base.BaseHandler,django.core.handlers.wsgi.WSGIHandler,前者为后者的父类。django.http.request.HttpRequest后者的实例实现了WSGI请求的处理,因为WSGIHandler 实现了__call...
2018-11-17 07:41:25
502
转载 转:sys-系统特定的参数和功能
转自:sys-系统特定的参数和功能该模块提供对解释器使用或维护的一些变量的访问,以及与解释器强烈交互的函数。它始终可用。sys.argv传递给Python脚本的命令行参数列表。argv[0]是脚本名称(依赖于操作系统,无论这是否是完整路径名)。如果使用-c解释器的命令行选项执行命令,argv[0]则将其设置为字符串’-c’。如果没有脚本名称传递给Python解释器,argv[0]则为空字符串...
2018-11-16 18:05:26
555
转载 转:《关于HTTP协议,一篇就够了》,讲的很详细,果断转载收藏!
转自:关于HTTP协议,一篇就够了HTTP简介HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的...
2018-11-16 11:38:32
556
原创 shell脚本定时任务不执行问题
1,用户权限问题,crontab 没有脚本文件的执行权限,无法执行2,路径问题,相对路径,会无法找到脚本文件3,变量问题,脚本需要传变量,crontab没有传,4,时差问题,这个我也没想到,没遇到这种问题,看到一篇总结的很详细的博客里有说到这个问题,先记录一下。5,服务问题,编辑crontab任务后,没有启动……参考文章:https://blog.youkuaiyun.com/u011734144/...
2018-11-15 22:25:18
5513
原创 Python模块之time
最近遇到一个问题,需要转换时间格式,当时有点懵逼了,知道要用time模块,但是具体的用哪个方法,记不得了,真是学的慢,忘得快啊!因此决定把这些内容系统的整理、复习一下!time模块,python内置模块有以下方法['_STRUCT_TM_ITEMS', '__doc__', '__loader__', '__name__', '__package__', '__spec__', 'altzo...
2018-11-14 18:59:29
160
原创 Ubuntu系统使用Shell脚本定时执行python脚本
1,写python脚本,命名为test.pyfor i in range(5): print('1234')2,写shell脚本,命名为myshell.sh#!/bin/bashsudo python test.py \recho &amp;amp;amp;quot;执行完毕&amp;amp;amp;quot;exit 02个脚本都放在/home/目录下3,添加到定时任务crontab -e如果是第一次创建定时任务,会出现这样的提示,选...
2018-11-14 15:24:43
6753
5
原创 Navicat Premium 远程连接云服务器MySQL
环境:Navicat Premium 11.0.17版本阿里云服务器Ubuntu系统18.04,MySQL 5.71,服务器要启动MySQL服务,MySQL安装后都是默认处于启动状态的(没有主动停止的情况下),可以先用mysql -uroot -p 命令登录测试一下,如果没有启动,需要启动启动:sudo service mysql start停止:sudo serv...
2018-11-14 09:05:39
1110
原创 python3.6.7运行Django项目报错:ModuleNotFoundError: No module named '_sqlite3'
重装了python3.6.7,运行Django项目时报错:ModuleNotFoundError: No module named '_sqlite3',百度搜索解决方案,是缺少sqlite3模块,搜索了几个方案,找到一个能用的记录下来。1,下载源码编译安装sudo wget https://www.sqlite.org/2018/sqlite-autoconf-3250300.tar...
2018-11-14 00:51:44
3529
3
翻译 uwsgi 命令参数详解
uwsgi 参数详解uwsgi [options...] -s|--socket bind to the specified UNIX/TCP socket using default protocol -s|--uwsgi-socket bind to the specifie...
2018-11-10 17:02:39
5348
2
原创 uWSGI部署Django项目
一、准备工作:1,搭建虚拟环境,使用virtualenv,没有安装的需要安装$ apt-get install virtualenv # 安装创建虚拟环境:$ virtualenv webvenv # 虚拟环境名为webvenv启动虚拟环境(注意:如果切换目录的话,webvenv前需要加相对路径):$ source webvenv/bin/activate2...
2018-11-10 16:09:40
1149
原创 The MySQL server is running with the --secure-file-priv option so it cannot execute this statement
MySQL导出文件时,遇到报错“The MySQL server is running with the --secure-file-priv option so it cannot execute this statement”,网上搜索解决方案,各大神方案相同,第一步:show variables like '%secure%';图一:第二步:打开MySQL安装路径,找到my....
2018-11-08 23:18:50
26166
9
转载 DDL、DML和DCL的区别与理解(转载)
转自https://www.2cto.com/database/201610/555167.html这篇文章主要介绍了DDL、DML和DCL的区别与理解,需要的朋友可以参考下DML、DDL、DCL区别 .总体解释:DML(data manipulation language):它们是SELECT、UPDATE、INSERT、DELETE,就象它的名字一样,这4条命令是用来对数据...
2018-11-08 20:18:36
233
转载 二十三种设计模式及其python实现(转载)
转自http://www.cnblogs.com/Liqiongyu/p/5916710.html设计模式是什么?设计模式是经过总结、优化的,对我们经常会碰到的一些编程问题的可重用解决方案。一个设计模式并不像一个类或一个库那样能够直接作用于我们的代码。反之,设计模式更为高级,它是一种必须在特定情形下实现的一种方法模板。设计模式不会绑定具体的编程语言。一个好的设计模式应该能够用大部分编程语言...
2018-11-08 07:42:25
177
原创 Docker学习
docker version:查看版本 Images:Docker镜像,用于创建Docker容器的模板Container:Docker容器,是独立运行的一个或一组应用Client:Docker客户端,通过命令行或者其他工具使用Docker API与Docker的守护进程通信。Host:Docker主机,一个物理或者虚拟的机器用于执行Docker守护进程和容器。Registry:...
2018-11-07 15:00:57
189
原创 RE正则表达式总结(二)
三、常用方法1,match( rule , targetString [,flag] ): 默认从字符串的开头开始匹配,如果开头位置没有匹配成功,则返回空;第一个参数是匹配规则,第二个参数是目标字符串,第三个flag是一个可选的规则选项(修饰符,用于控制正则表达式的匹配方式,如:是否区分大小写,多行匹配等等)。使用group(num) 或 groups() 匹配对象函数来获取匹配表达式。2...
2018-11-06 22:22:30
1144
原创 windows下Python3安装PyChecker模块
1,概述PyChecker是Python代码的静态分析工具,它能够帮助查找Python代码的bug,而且能够对代码的复杂度和格式等提出警告。PyChecker可以工作在多种方式之下。首先,PyChecker会导入所检查文件中包含的模块,检查导入是否正确,同时检查文件中的函数、类和方法等。PyChecker可以检查出来的问题有如下几种:全局量没有找到,比如没有导入模块 传递给函数、...
2018-11-06 12:31:39
1670
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人