摘要:
递归是非常基本的算法,虽然非常好用,但是也非常耗费空间资源,所以编程中在保证代码简洁性和可读性的前提下,如果可以不使用递归则尽量不使用递归。而尾递归则是一种可以在不使用其他辅助空间的情况下被消除的递归:如果一个函数的递归调用和调用的返回值总是在函数的末尾,且返回值不包括在表达式中,则这种递归通常称之 阅读全文
摘要:
一个远程的Git仓库通常会提供HTTPS和SSH两种操作方式给用户,HTTPS的方式每次认证都需要输入密码,而SSH的方式则需要在服务器上配置SSH KEY(SSH公钥),提供了SSH KEY后,远程仓库就可以自动使用SSH公钥来进行认证,而不需要输入密码了。 右键打开 Git Bash Here 阅读全文
摘要:
Git在提交时如果需要以指定的格式提交,可以给Git配置一个提交模板,配置好后,每次Git commit时都会将模板中的信息作为初始化信息自动填充到编辑器的提交信息中。 以命令的方式配置: git config --global commit.template ~/.gitmessage.txt 在 阅读全文
摘要:
Python有多种插件都支持RabbitMQ,本文介绍的是RabbitMQ推荐的Pika插件。使用pip直接安装即可 pip install pika 。 一、RabbitMQ简介 1. MQ简介 MQ(Message Queue,消息队列),是一个在消息传输过程中保存消息的容器,多用在分布式系统之 阅读全文
摘要:
1. 为什么需要使用mock unittest.mock是用于在单元测试中模拟和替换指定的对象及行为,以便测试用例更加准确地进行测试运行。例如对于以下代码,想要针对函数func_a写一个简单的单元测试: import unittest def func_c(arg1, arg2): a_dict = 阅读全文
摘要:
一、WSGI简介 WSGI(Web Server Gateway Interface,web服务器网关接口)主要规定了服务器端和应用程序之间的接口,即规定了请求的URL到后台处理函数之间的映射该如何实现。wsgiref是一个帮助开发者开发测试的Python内置库,程序员可以通过这个库了解WSGI的基 阅读全文
摘要:
array模块提供了一种数组概念上的紧凑类型的实现,数组中的元素必须为同一类型,且为基础数据类型(字符、整数或浮点数),这些元素在内存中是按固定大小(字节)连续存储的,相比于列表和元组类型,array模块的实现更加节省内存。但是注意,使用的时候还是需要根据实际情况来看,因为Python对于数字、字符 阅读全文
摘要:
Python进行异步执行的库有threading(多线程)和multiprocessing(多进程),这两个库为程序提供了丰富的异步操作,但是如果只是进行一些简单的异步执行,并不需要用到多复杂的场景,可以考虑使用concurrent.confutures。它提供一些简单常用的异步执行操作,比如sub 阅读全文
摘要:
题目描述 给定一个仅包含小写字母的字符串,求它的最长回文子串的长度。所谓回文串,指左右对称的字符串。 解题思路 当字符串不为空时,回文子串最少也是一个字符,即初始长度为1,当回文子串更长时,就可能有两种情况:例如“...aa...”或“...aba...”,即长度+1或+2。以后遍历时每增加一个字符 阅读全文
摘要:
题目描述 求一个byte数字对应的二进制数字中1的最大连续数,例如3的二进制为00000011,最大连续2个1。 解题代码 bit_num = 0b101110 k = 0 while bit_num != 0: bit_num &= (bit_num << 1) k += 1 print(k) # 阅读全文