- 博客(16)
- 收藏
- 关注
原创 learn Django 笔记 遇到的坑!
from django.urls import reverse#Django 2.0 remove django.core.urlresolverDjango 2.0 移除了django.core.urlresolver 模块 转换为django.urls 代替python manage.py test --verbosity=2Verbosity(冗长) determines the amoun...
2018-02-18 00:26:07 443
原创 Unix 如何杀死一个进程和它的子孙进程?
最近周末在维护一个开源项目,叫做 air。它是一个 Golang 的热加载代码的工具,会监听本地的文件变化,然后自动重新加载。遇到的问题最近遇到一个特别有意思的问题,就是使用 kill -9 pid 命令杀死进程的时候虽然会杀死它的子进程,但是它的孙子进程还是会继续存活。背景简而言之,就是我们的热加载组件会运行命令,然后会监听文件变化,一旦文件变化就会 kill 掉之前进程,然后重新编译代码,再执行运行的命令。但是遇到一个用户提了这样一个问题: https://github....
2022-01-24 23:45:27 896 1
原创 Golang: 让你的零值更有用
Make the zero value useful.–Go Proverbs让我们从 Golang blog 开始吧: The zero value当内存被分配来存储一个值时,无论是通过声明还是调用 make 或 new ,并且没有提供明确的初始化,内存被赋予一个默认的初始化。这种值的每个元素都被设置为其类型的零值(zero value):布尔值为 false,整数为 0,浮点数为0.0,字符串为 "" ,指针、函数、接口、slice、channel 和 map 为 nil。...
2022-01-16 21:14:20 315
原创 使用 Mock 和 Interface 进行 Golang 单测
在工作中我经常会发现很多工程师的 Golang 单测是写的有问题的,只是单纯的调用代码做输出,并且会包含各种 IO 操作,导致单测无法到处运行。 本文将介绍 Golang 中如何正确的做单测。什么是单元测试?单元测试的特点单元测试是质量保证十分重要的一环,好的单元测试不仅能及时地发现问题,更能够方便地调试,提高生产效率,所以很多人认为写单元测试是需要额外的时间,会降低生产效率,是对单元测试最大的偏见和误解。单测会将对应测试的模块隔离出来进行测试,所以我们要尽可能把所有相关的外部依赖都移除,只对相关的模块进.
2022-01-08 18:43:54 1067
原创 关于 Golang Slice 的一些细节
在 Golang 中,有两种数据类型:一种是限定长度的数组,叫做 Array,另外一种是不限定长度的数组,叫做 Slice。区分 Array 和 SliceArray 和 Slice 的区别在于:Array 是限定长度的,并且 Array 的长度是类型的一部分,因此 Array 的长度不能改变,而 Slice 可以改变长度。Slice 是不限定长度的,可以使用 make 函数来创建。foo = make([]int, 5)并且 Slice 只是一个数据结构,内部有一个指针,指向...
2021-12-22 14:24:59 260
原创 1000 行代码实现 Servlet 容器
这坑开了有三个多月了,是今年春招的时候开始写的方轮子。感觉很多基本的功能都已经完成了,下面分享上来给大家讲下写这个方轮子的心路历程。起因起初在牛客上看到一篇帖子 《震惊!文科生如何三个月转行成为Java工程师? 》 这个作者自己写了一个HTTP server ,我突然想到为什么我不去实现一个呢?因为其实在转到 Java(为了就业) 之前我是学习Python的,曾经用Python 实现过...
2019-06-30 23:04:50 190
翻译 Java 如何区分==与.equals()方法
一般来说equals()和"=="运算符是用来比较两个对象是否相等,但是这两者之前还是有许多不同:最主要的不同是.equals()是方法,==是运算符。使用==来进行引用的比较,指的是是否指向同一内存地址。使用.equals()来进行对象内容的比较,比较值。如果没有重写.equals就会默认调用最近的父类来重写这个方法。示例代码:// Java program to underst...
2019-02-24 20:33:07 221
原创 js getElementsByName 返回undefined
因为使用的时候name 所以 反悔的会是一个列表 所以最好就取第一个数值 牛逼
2018-05-02 11:41:18 1807
原创 爬虫遭遇状态码521陷阱 破解js加密cookie
最近接了个小单,遇到一个很头疼的问题,返回的状态码无限521,在网上查阅了各种资料后,终于解决了问题返回200。首先咱们先贴上网址:点击打开链接首先我们按照传统的方法:import requestsheaders={ 'User-Agent':'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Geck...
2018-03-01 15:02:02 16935 28
learnDjango 3
as_p()¶Form.as_p()¶as_p() 渲染表单为一系列的<p> 标签,每个<p> 标签包含一个字段:>>> f = ContactForm()>>> f.as_p()'<p><label for="id_subject">Subject:</label&g
2018-02-24 23:40:23 170
原创 爬虫下载添加进度条
def report(count, blockSize, totalSize): percent = int(count*blockSize*100/totalSize) sys.stdout.write("\r%d%%" % percent + ' complete') sys.stdout.write('[%-50s] %s'%( '=' * int(math.floor(coun...
2018-02-21 00:04:21 1789
原创 Python标准库函数OS
os.path.basename(path) 返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素os.path.basename(path) 返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素。 ...
2018-02-19 23:14:35 385
原创 增加爬虫开发脚本整理
class trancookie: def __init__(self,cookie): self.cookie=cookie def stringtoDict(self): itemDict={} items =self.cookie.split(';') for item in items: ...
2018-02-18 18:16:39 276
原创 learn git 廖雪峰GIT教材2 解决冲突&amp;amp;&amp;amp;分支管理策略
pipidi@pipidi-ThinkPad-E555:~/learngit$ git merge featureAuto-merging learngit/readme.txtCONFLICT (content): Merge conflict in learngit/readme.txtAutomatic merge failed; fix conflicts and then comm...
2018-02-17 14:41:12 375
转载 learn git 廖雪峰GIT教材1 创建与合并分支
git checkout命令加上-b参数表示创建并切换,相当于以下两条命令:checkout 表示切换 切换到dev分支上$ git branch dev$ git checkout devSwitched to branch 'dev'简单说git 创建了dev 分支 说明git存在了两个分支 ,一个是master 一个是 dev 分支 当转向dev分支的时候 所有更新的内容都会转向dev...
2018-02-17 13:48:16 300
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人