Leetcode Weekly Contest 176 题解

来源:manjusaka   |   更新时间: 1天前   |   分类: 刷题


emmmm,我的拖延症没救了,顺便加上这周沉迷 Kotlin ,这篇本应该周一就写完的题解拖到现在,= =然而这周双周赛,,我又得写两篇题解了。。。

题面:

Given a m * n matrix grid which is sorted in non-increasing order both row-wise and column-wise.Return the number of negative numbers in grid.

查看原文

游戏《蔚蓝山》教我的编程道理

来源:piglei   |   更新时间: 1天前   |   分类: 


如果有这么一款游戏,你操作的角色平均每 20 秒就会死亡一次,正常通关一次,总共需要死掉超过 2000 次。你猜这是一款神作还是垃圾?

《Celeste》(译名:“蔚蓝山”)就是这么一款游戏。在游戏里,你扮演一个名为 Madeline 的女孩,通过跳跃、抓墙、冲刺等动作,去努力登顶一座名为 “Celeste” 的高山。

正如我在开头说的,这款游戏的难度高到令人发指,玩家平均得死上千次才能通关。但奇怪的是,这款游戏获得的成就似乎和它的难度一样高。在 2018 发售那年,它获得了 TGA “年度游戏”提名并成功拿下了“最佳独立游戏”奖项。截止到 2018 年底,它总共卖出了超过 50 万份。

查看原文

IRedis 1.0 发布

来源:kawabangga   |   更新时间: 2天前   |   分类: Python


这算是 IRedis 开发系列的第4篇笔记吧。这篇文章来聊一下 IRedis 最近发布 1.0 带来的新 Feature,一些开发过程中的思考,以及最后贴一下发布之后的一些“成就” (炫耀)。上次提到的介绍一些开发中使用的 tricks,就让我再拖到下一篇博客吧!

PS: 如果您还不知道 IRedis 的话,可以理解成是 redis-cli 的一个替代品。类似于 IPython 相比于 python 官方的 REPL,专注于用户体验,支持语法高亮,命令提示,自动补全等。全部的 Feature 可以参考项目 Readme,以及官网。

查看原文

[译]Richardson成熟度模型

来源:vimiix   |   更新时间: 3天前   |   分类: 


原文链接:https://martinfowler.com/articles/richardsonMaturityModel.html

Leonard Richardson提出的一个模型,将实现REST方法的主要元素分解为三个步骤,分别包括:资源(Resources)、HTTP动词(HTTP Verbs,如GET、POST等)和超媒体控制(Hypermedia Controls)。

查看原文

图表即代码:使用 Diagrams 制作云系统架构原型图

来源:prodesire   |   更新时间: 8天前   |   分类: Python


昨天发现了一款非常不错的云系统架构原型图制作库Diagrams,通过它,我们便可以使用代码的方式绘制诸如阿里云、AWS、Azure、K8S 等系统架构原型图。

相比于在 UI 上对各种图标进行拖拽和调整,这种方式更符合我们程序员的使用习惯。

本文不仅要介绍下这个库,也想说说我是如何参与到这个库中以支持阿里云资源。

Diagrams使用Graphviz来渲染图表,在安装diagrams之前需要先安装 Graphviz。

查看原文

Python 工匠:写好面向对象代码的原则(下)

来源:piglei   |   更新时间: 9天前   |   分类: 


这是 “Python 工匠”系列的第 14 篇文章。[查看系列所有文章]

在这篇文章中,我将继续介绍 SOLID 原则剩下的两位成员:I(接口隔离原则)和D(依赖倒置原则)。为了方便,这篇文章将会使用先 D 后 I 的顺序。

软件是由一个个模块组合而成的。当你跟别人说:“我在写一个很复杂的软件”,其实你并不是直接在写那个软件,你只是在编写它的一个个模块,最后把它们放在一起组合成你的软件。

查看原文

百度低质回答是如何坑了你

来源:frostming   |   更新时间: 12天前   |   分类: 编程


昨天某个新手又抛出来个问题:为什么找不到django-admin可执行程序?我一看这不是Python高频问题之一吗1,就问他PATH是怎么设置的,结果他把django-admin复制到了site-packages/django/bin下面。这就相当荒谬了,lib/site-packages下面放的是库文件,这里是不可能会有bin存在也不会有可执行程序在这里面的,当然,你随便放在哪,只要加到PATH里面了就肯定能工作。那么试问为何不把django-admin原本所在位置加到PATH里而要用这么蹩脚的方法呢?

查看原文

Leetcode BiWeekly Contest 19 题解

来源:manjusaka   |   更新时间: 14天前   |   分类: 刷题


例行 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   |   更新时间: 15天前   |   分类: 数据库


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

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

查看原文

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

来源:prodesire   |   更新时间: 15天前   |   分类: 


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

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

Leetcode Weekly Contest 174 题解

来源:manjusaka   |   更新时间: 22天前   |   分类: 刷题


最近因为生病好久没刷题,今早开始打了一场 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   |   更新时间: 24天前   |   分类: 


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

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

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

查看原文

参加 PyCon China 2019 上海站

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


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

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

查看原文

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

来源:prodesire   |   更新时间: 26天前   |   分类: 


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

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

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

简单安利 Rime 输入法

来源:manjusaka   |   更新时间: 27天前   |   分类: Rime


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

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

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

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

查看原文

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

来源:foofish   |   更新时间: 29天前   |   分类: 默认分类


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

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

查看原文

Python 壹周刊 008

来源:prodesire   |   更新时间: 29天前   |   分类: Python


本周没有新鲜事儿。

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

Python 进度条 tqdm 示例

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

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

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

查看原文

升级

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


JAN 21ST, 2020

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

测试一下发文章

查看原文

2019 年总结

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


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

Good

Bad

写作

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

查看原文

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

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


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

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

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

查看原文

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