Leetcode BiWeekly Contest 19 题解

来源:manjusaka   |   更新时间: 5月前   |   分类: 刷题


例行 Leetcode 周赛,这周双周赛,两场赛打下来,有点酸爽,先写个 BiWeekly 19 Contest 的题解吧

题面:

Given a non-negative integer num, return the number of steps to reduce it to zero. If the current number is even, you have to divide it by 2, otherwise, you have to subtract 1 from it.

查看原文

Use the Index, Luke! 笔记1

来源:kawabangga   |   更新时间: 5月前   |   分类: 数据库


这篇文章是我读https://use-the-index-luke.com/第一章的笔记。这对开发者来说是一本不错的教材,读起来也非常轻松,在捕蛇者说的节目中也推荐过。我阅读的时候会做一些简略的笔记,逐步分享在博客上。

SQL 写起来就像英语(比 Python 更像)。SQL 只要求你描述你想要的数据,而不要求你关心数据库如何把这些数据库查出来。在这方面,这个语言的抽象很好。但是涉及到性能,这种抽象就不完美了。写 SQL 的人必须了解一些数据库的工作原理才能写出性能比较好的 SQL 语句。

查看原文

Python 命令行之旅:argparse、docopt、click 和 fire 总结篇

来源:prodesire   |   更新时间: 5月前   |   分类: 


在近半年的 Python 命令行旅程中,我们依次学习了argparse、docopt、click和fire库的特点和用法,逐步了解到 Python 命令行库的设计哲学与演变。本文作为本次旅程的终点,希望从一个更高的视角对这些库进行横向对比,总结它们的异同点和使用场景,以期在应对不同场景时能够分析利弊,选择合适的库为己所用。

本系列文章默认使用 Python 3 作为解释器进行讲解。
若你仍在使用 Python 2,请注意两者之间语法和库的使用差异哦~
查看原文

Leetcode Weekly Contest 174 题解

来源:manjusaka   |   更新时间: 6月前   |   分类: 刷题


最近因为生病好久没刷题,今早开始打了一场 Leetcode 的周赛,来写个题解,今早状态还行,,BTW 以后每周都会打周赛,争取写题解

描述:

Given a m * n matrix mat of ones (representing soldiers) and zeros (representing civilians), return the indexes of the k weakest rows in the matrix ordered from the weakest to the strongest.A row i is weaker than row j, if the number of soldiers in row i is less than the number of soldiers in row j, or they have the same number of soldiers but i is less than j. Soldiers are always stand in the frontier of a row, that is, always ones may appear first and then zeros.

查看原文

一行命令自动戴上口罩

来源:prodesire   |   更新时间: 6月前   |   分类: 


2019 年底开始蔓延的新型肺炎疫情牵动人心,作为个体,我们力所能及的就是尽量待在家中少出门。

看到一些朋友叫设计同学帮忙给自己的头像戴上口罩,作为技术人,心想一定还有更多人有这样的诉求,不如开发一个简单的程序来实现这个需求,也算是帮助设计姐姐减少工作量。

于是花了些时间,写了一个叫做face-mask的命令行工具,能够轻松的给图片中的人像戴上口罩,而且口罩的方向和大小都是适应人脸的哦~

查看原文

参加 PyCon China 2019 上海站

来源:greyli   |   更新时间: 6月前   |   分类: 活动与游记


19 年的九月末,参加了在上海(主会场)举办的PyCon China 2019(Python 中国开发者大会)。这是第二次参加 PyCon China。

从台湾 COSCUP回来休息了一阵,回过神来已经是九月初了。和去年不一样的是,今年同时参与了 PyCon China 的筹备工作。大脑短路,给自己安排了太多事情:除了大会网站更新、文档翻译、社交网站维护这些前期工作和讲师接待、闪电演讲组织和主持这些现场工作,还要准备自己的闪电演讲、主题演讲和一个三小时的教程(Tutorial),在忙到快要崩溃的时候,终于在开始前两天说服辛庆老师(组委会总负责人)取消了我的教程,要不然我可能会累死 :/

查看原文

参加 PyCon China 2019 上海站

来源:greyli   |   更新时间: 6月前   |   分类: 活动与游记


19 年的九月末,参加了在上海(主会场)举办的PyCon China 2019(Python 中国开发者大会)。这是第二次参加 PyCon China。

从台湾 COSCUP回来休息了一阵,回过神来已经是九月初了。和去年不一样的是,今年同时参与了 PyCon China 的筹备工作。大脑短路,给自己安排了太多事情:除了大会网站更新、文档翻译、社交网站维护这些前期工作和讲师接待、闪电演讲组织和主持这些现场工作,还要准备自己的闪电演讲、主题演讲和一个三小时的教程(Tutorial),在忙到快要崩溃的时候,终于在开始前两天说服辛庆老师(组委会总负责人)取消了我的教程,要不然我可能会累死 :/

查看原文

一文掌握 Python 中的 "is" 和 "=="

来源:prodesire   |   更新时间: 6月前   |   分类: 


Python 的 “is” 和 “==” 想必大家都不陌生,我们在比较变量和字面量时常常用到它们,可是它们的区别在哪里?什么情况下该用is?什么情况下该用==?这成了不少人心中的困惑。

当我们判断一个变量是否为None时,通常会用is:

>>> a = None
>>> a is None
True
>>> b = 1
>>> b is None
False
查看原文

简单安利 Rime 输入法

来源:manjusaka   |   更新时间: 6月前   |   分类: Rime


唉,最近因为气胸大过年的住院,春节颓废了好久,今天开始回北京,干脆来安利一个输入法– Rime

如同大多数人一样,我之前也是使用搜狗输入法作为自己的主力输入法,但是搜狗输入法的一些缺陷让我放弃了使用搜狗输入法

作为传统艺能,搜狗输入法隐私保护成迷,在 MacOS 上某几个版本的搜狗在寻求获取我的通讯录和日历读取权限

作为传统艺能,搜狗输入法的广告推送实在是一言难尽,特别是在 Windows 上,已经禁了一些组件,但是还是防不胜防

查看原文

转化最高16%,首批微信付费阅读公众号分析

来源:foofish   |   更新时间: 6月前   |   分类: 默认分类


早在三年前微信内部就在测试付费阅读,但是一直没有对外发布。最大的阻力来自于苹果。按照苹果的规定,虚拟支付需要抽取30%的提成,谁也没法绕过,要么妥协,要么放弃。但是微信最开始没有妥协,一直拖着。

微信选择这个时间点发布付费阅读功能,我猜测原因是公众号打开率不断下滑求变的结果。有个数据统计,一篇10w+的文章一年前最快10分钟就可以达到,而现在要1个小时,行业打开率3%左右(参考数据)。

查看原文

Python 壹周刊 008

来源:prodesire   |   更新时间: 6月前   |   分类: Python


本周没有新鲜事儿。

2020 年后的软件开发人员趋势

Python 进度条 tqdm 示例

进度条是程序开发中一个不可获取的功能,网上关于 Python 进度条库 tqdm 的示例说的并不友好,本文将深入浅出地带你如何使用 tqdm 实现进度条功能。

为什么 Python 3.8 给 “is” 打印 SyntaxWarning?

对比 Python、Go 和 C++ 的 N 皇后问题

查看原文

升级

来源:laike9m   |   更新时间: 6月前   |   分类: 


JAN 21ST, 2020

Ubuntu 14.04 --> 18.04Python 3.4 --> 3.8DJango 1.8 --> 2.2

测试一下发文章

查看原文

自带电池的盆栽

来源:greyli   |   更新时间: 6月前   |   分类: 生活记录


去年新养了一个盆栽。因为不用浇水不用施肥,自带一个巨大的养料库,所以也可以叫做自带电池(batteries included*)的盆栽。

获得步骤如下:

P.S. 右边的龙猫是瑶瑶的作品。

P.P.S 第一次看到「batteries included」这个词是在 Django 的文档里,用来描述 Python 的特点,有时也会被翻译成「内置电池」。

查看原文

自带电池的盆栽

来源:greyli   |   更新时间: 6月前   |   分类: 生活记录


去年新养了一个盆栽,我觉得可以算是多肉的一种。因为不用浇水不用施肥,自带一个巨大的养料库,所以也可以叫做自带电池(batteries included*)的盆栽。

获得步骤如下:

P.S. 右边的龙猫是瑶瑶的作品。

P.P.S 第一次看到「batteries included」这个词是在 Django 的文档里,也会被翻译成「内置电池」。

查看原文

2019 年总结

来源:greyli   |   更新时间: 6月前   |   分类: 计划与总结


从 2019 年的日程本来看的话,越往后面字越潦草,涂鸦和乱画也越来越多。总的来说,2019 年偏离计划太多,虽然有一些计划外的收获,但年初定下的目标大都没有完成。从好坏两方面总结下:

Good

Bad

写作

一月份完成了电子书《Flask 入门教程》,虽然是免费电子书,但也在书里放了一个付款二维码(定价¥10),目前收入快接近 400,大概能证明自愿付费不太可行(也可能是因为我一开始错误的把付款二维码放在了后记里 )。2019 年快结束的时候,收到两笔记忆深刻的付款——一份是来自知友CycleUser的 66 元巨款,另一份是来自*昱的 2 块钱定金(现在还没收到剩下的 8 块……):

查看原文

2019 年总结

来源:greyli   |   更新时间: 6月前   |   分类: 计划与总结


从 2019 年的日程本来看的话,越往后面字越潦草,涂鸦和乱画也越来越多。总的来说,2019 年偏离计划太多,虽然有一些计划外的收获,但年初定下的目标大都没有完成。从好坏两方面总结下:

Good

Bad

写作

一月份完成了电子书《Flask 入门教程》,虽然是免费电子书,但也在书里放了一个付款二维码(定价¥10),目前收入快接近 400,大概能证明自愿付费不太可行(也可能是因为我一开始错误的把付款二维码放在了后记里 )。2019 年快结束的时候,收到两笔记忆深刻的付款——一份是来自知友CycleUser的 66 元巨款,另一份是来自*昱的 2 块钱定金(现在还没收到剩下的 8 块……):

查看原文

Python 命令行之旅:使用 fire 实现 git 命令

来源:prodesire   |   更新时间: 6月前   |   分类: Python


在前面三篇介绍fire的文章中,我们全面了解了fire强大而不失简洁的能力。按照惯例,我们要像使用argparse、docopt和click一样使用fire来实现 git 命令。

本文的关注点并不在git的各种命令是如何实现的,而是怎么使用fire去打造一个实用命令行程序,代码结构是怎样的。因此,和git相关的操作,将会使用gitpython库来简单实现。

为了让没读过使用 xxx 实现 git 命令(xxx指argparse、docopt和click) 的小伙伴也能读明白本文,我们仍会对git常用命令和gitpython做一个简单介绍。

查看原文

IRedis开发记3:编译正则的难题

来源:kawabangga   |   更新时间: 6月前   |   分类: 程序开发笔记


这篇文章是 IRedis 的第三篇开发笔记。一直以来,IRedis 的补全都是基于 prompt_toolkit 的 regular_language 来实现的(一个例子)。我需要用正则表达式来验证用户输入的 Redis 命令是否合法,从中抓出来 token,然后对这些 token 进行自动补全。随着开发,支持的 Redis 的命令越来越多,这个正则表达式已经膨胀到 200+ 行了,编译速度也令人难以忍受。

查看原文

2019年小结

来源:dongwm   |   更新时间: 6月前   |   分类: 


早就想写一篇年终总结,就像豆瓣书影音报告那样复盘一下我这一年。不过每年年底却是我最忙的一段时间,一直拖到现在。

时间过得好快,一转眼小朋友已经上幼儿园大班了。看着小朋友一天天长大,不可以避免的感觉到自己越来越「成熟」,更现实了,看清了很多事情,焦虑的地方多了。

自从有了女儿,对很多东西的看法都发生了改变。

我本身是一个比较宅的人,喜欢安静,哪怕什么都不干摊在沙发我都觉得挺好的。但是小朋友正好相反,除了被她的想象力和好奇心折服之外,最羡慕的就是她的精力。我虽然宅但是希望她非常活泼,性格开朗,所以尽量不要宅在家,在周末或者假期参与各种活动。

查看原文

继续优化博客Vue+Webpack生成的Javascript文件体积

来源:dongwm   |   更新时间: 6月前   |   分类: 


昨天lyanna刚发布了 v3.2,这里面只有一个更新,就是极大的降低了后台和动态这种使用 Vue+webpack 生成的 Javascript 文件的体积。其实代码改动不大,但是效果很明显,本文就是分享这件事。

在之前的版本里面 Javascript 文件大小如下:

❯ du -sh static/js/activity/*.js
208K    static/js/activity/app.js
1.9M    static/js/activity/chunk-vendors.js

❯ du -sh static/js/admin/*.js
824K    static/js/admin/app.js
8.0K    static/js/admin/chunk-2d230fe7.js
4.0K    static/js/admin/chunk-2d2382a4.js
28K static/js/admin/chunk-46e421b1.js
1.9M    static/js/admin/chunk-vendors.js
查看原文

本页内容使用均遵循相关开源协议,部分内容获得作者本人授权