详情

全站展示位

Python 装饰器 | Shawn's Blog

0X00 给一个方法计时现在我们有一个需求,需要给程序中的一部分方法计时,以监控他们执行完具体用了多久。那么在没有装饰器的情况下我们会写出类似这样的代码: 12345678910import datetimedef foo(): pass # some codestart = datetime.datetime.now()foo()end = datetime.datetime.now。。。

推荐

标签: RabbitMQ | Shawn's Blog

分享我的知识、经验、生活与感悟

C语言中的Bool类型 | Shawn's Blog

最近在网上看到有的说法里是没有bool类型的,不过以前在书上好像看到过相关的介绍,就特意找出来了那本书《C Primer Plus》,确定了C语言里确实存在bool类型。C语言是在C99标准中添加的bool类型。 bool类型是以英国数学家 * George Boole * 命名的,是他开发了用线性代数表示并解决逻辑问题的系统。   在C语言中我们使用 _Bool 来定义bool类型的变量

标签: Link | Shawn's Blog

分享我的知识、经验、生活与感悟

使用nmcli和ip命令配置CentOS/RHEL的网络 | Shawn's Blog

0X00 查看网络配置文件在CentOS中网络是以配置文件的形式存在系统里的,在/etc/sysconfig/network-scripts/目录下,一般情况下网卡的配置文件都在这里了,以ifcfg-就是配置文件了,打开配置文件看一下。下面注释一下关键的配置项 12345678910111213141516171819TYPE=Ethernet # 网络类型BOOTPROTO=

心灵鸡汤

005、北风和太阳

有一天,北风和太阳在不停的争论,他们都认为自己的本领更大,争论了半天,谁也无法说服对方。

最后,它们相互约定:如果谁能让路人脱下衣服,谁就获胜。

北风心想,这对我来说太简单了,于是,它开始猛烈地呼啸起来,可是路人却把身上的衣服裹得紧紧的。北风更加猛烈地怒吼起来,受冻的路人把衣服裹得越来越紧。

最后北风累了,只好让太阳去试试。

太阳起初只发出一点点暖洋洋的光芒,路人开始脱去身上多余的衣服,这时候太阳火辣辣地烤起来,结果路人承受不了炎热,脱光了所有衣服,跑到附近的小河里去洗澡了。

列表展示

主站展示位

Linux交换分区 Swap 虚拟内存 理解虚拟内存 | Shawn's Blog

SWAP分区是Linux的交换分区。交换分区实际存在于磁盘中,不过Linux系统可以将它当作内存使用,当物理真实内存不足的时候交换分区就可以和真实内存进行数据交换。简单地说就是从磁盘里拿出一块空间当作内存的储备区。虽说磁盘被拿来当作内存使用,但是速度还是磁盘的速度。可以想象下面一种日常生活的场景: 当你工作的时候一定是把桌洞里的东西拿出来放到桌面上,并且手里拿着一部分东西在操作,然后桌面和桌洞里

究竟什么是加密 | Shawn's Blog

0X00 什么不是加密首先要先明确一个问题:我们日常使用非常多的 md5、SHA-1、SHA-256 这些 通通都不是加密,这些叫做摘要算法。一串明文经过加密算法加密之后,是可以再次解密成明文的,但是摘要算法就不行了。 拿最常见的摘要算法 md5 举例:针对任何一个合法输入,md5 都会给出一个固定长度为 128 bit(32 byte)的输出,例如 md5("hello, world&

Python之字符串 | Shawn's Blog

0X00 如何定义一个字符串** Python不需要定义 ** 其实就是这样的。。在Python中的字符串通常这么写 123>>> str1 = 'hello,world'>>> str2 = "It's work">>> str3 = """ Jack:&quot

标签: Tmux | Shawn's Blog

分享我的知识、经验、生活与感悟

Python 奇技淫巧 (五) 系统脚本 | Shawn's Blog

文章中的代码仅在Python3中测试成功,没有在Python2中测试。 0X00 退出程序,显示错误信息写脚本的时候经常会有执行出错,出错的时候可以用一句话把程序退出并且打印错误信息raise SystemExit('error message') 0X01 输入密码有的时候需要输入用户名和密码,使用input()输入用户名自然没有问题,但是用相同的方法输入密码的时候时使用明文的

标签: Notebook | Shawn's Blog

分享我的知识、经验、生活与感悟

标签: pyc | Shawn's Blog

分享我的知识、经验、生活与感悟

写给新手的 Iptables 使用说明 | Shawn's Blog

0X00 基础知识常用 Linux 的各位估计都知道 iptables、firewalld 和 ufw 这三个工具吧,或者还知道 netfilter 这个内核组件。但是他们究竟是什么关系呢?从关系上来讲,可以将他们分成三层:最底层是 Linux 的安全框架 netfilter,上面是用来操作 netfilter 的 iptables,再上层是 firewalld 和 ufw。 其中 firewa

Python 标准库之 Collections | Shawn's Blog

0X00 Header相信各位肯定都对 Python 中的基础、常见数据类型和数据结构比较熟悉了吧,不管是 int、float、string、bool 还是 list、tuple、set 用起来应该也都是手到擒来了吧。下面我们就来简单了解一下相对高级一些的 Python 内置数据结构,这些数据结构全都在 collections 的标准库中。 掌握这些数据结构虽然并不能让你「精通 Python」,但

关于Python函数默认值的小问题 | Shawn's Blog

Python一切皆对象 0X00 困扰我的一个问题前两天在工作上遇到了个问题,说来很简单:我要在每天的固定时刻统计系统中当天产生的一些数据并且用邮件发送给指定的人,又考虑到了程序的可复用性(统计其他日期)我并没有把参数写死,而是将其默认为当天的日期并可以指定参数。很容易我就写出了类似下面的代码。Ps.伪代码,不要过分纠结。 123def export_statistic(export_date

MySQL慢查询初步 | Shawn's Blog

0X00 IO总是比运算慢众所周知计算机的IO都要比计算慢很多很多,即时是目前民用的高级SSD:三星970PRO,它的读写速度都要比内存慢上几个数量级,更不要说CPU了。所以软件的IO通常都是瓶颈,很多时候都是CPU等内存,内存等磁盘,磁盘等网络。 那么如何才能提升自己web服务的响应速度呢?通常来说简单的操作有如下两种:换硬盘或者改SQL。 0X01 换硬盘“这难道不是废话吗?”对呀,这就是废话

Shell 中的文本处理【简】 | Shawn's Blog

0X00 前言在这里介绍 Shell 脚本编程和日常的命令行操作中最常用的 9 个命令,希望对读到这篇文章的你有所帮助~ 这是一篇基础得不能再基础的内容,如果你看完还能有两三个收获的话,那就一起来恶补 Linux 知识吧🤣 0X01 catcat 命令应该是学习 Linux 命令时候最早接触到的命令之一了,自然不用多说什么,这里只提一个用法:如何 cat 命令创建一个文件。例如在脚本中我们需

Linux上的简单文本处理 | Shawn's Blog

0X00 前言最开始使用Linux的时候一直搞不懂为什么Linux下会有这么多在命令行里操作文本的工具。一度以为这些玩意儿没啥大用,但是随着使用频率与强度的增加才发现这些东西是Linux上非常有魅力的部分。 0X01 catcat命令是最简单的,cat filename就是将文件内容以文本的形式输出到命令行。这个命令主要是作为后面组合技的基础,威力到后面cat的作用才能发挥出来。 0X02 hea

你为什么需要会用 Tmux | Shawn's Blog

0X00 简单介绍想必看到这篇博客的各位肯定会经常工作在 Terminal 中吧,而且对自己稍微好一些的人应该也都会配置一下自己的终端环境,比较常见的就是 Linux 下装个 terminator 或者 macOS 下装一个 iTerm2 这种软件,然后再用 zsh 配合不同的主题和插件完善自己的体验。而且真正用过一段时间终端的人肯定都会有那种一个窗口不够用的情况,那么你可能要用到终端模拟器(te

Python 奇技淫巧 (二) 字符串、文本 | Shawn's Blog

文章中的代码仅在Python3中测试成功,没有在Python2中测试。 0X00 split升级字符串有一个split方法,可以用某个字符或字符串把源字符串切开。但是存在一个弊端,切割位置是固定的,不能灵活切割。有这样一个需求,将这个字符串hello 1 wrld 2 python 3 linux切割开,以每个数字为分隔符。这样标准的str.split就不能完成任务了。但是在re模块中有一个re

如何在 Django 与 DRF 中优雅地校验权限 | Shawn's Blog

0X00 Django 中的权限结构、定义我们知道在创建了一个 Django 项目之后,默认就有两个公开可用的 model:User 和 Group,这两个 model 的一项功能就是用来做权限管理的。系统中会有很多项权限,单个 user 可以配置拥有哪些权限,也可以将权限配置给 group。然后校验单个权限的时候其实就是将 user 本身的权限,和 user 所在的所有组的权限做一个并集,看本次

标签: String | Shawn's Blog

分享我的知识、经验、生活与感悟

如何让自己的Linux/macOS终端更好用 | Shawn's Blog

0X00 视频在这里 下面是配置文件这篇博客要配合发在bilibili的视频来看,这个文件是在~/.zshrc的。大家有问题直接在视频下面留言或者直接给我私信好了~

博客寄语:

    分享我的知识、经验、生活与感悟

实时播报:

博客号-学习成长

相信每一分耕耘都有每一分收获,致力帮助博客主所创作的博客能更快的被收录! 如果有其它需求,可联系下方邮箱。