Lua模式匹配
模式匹配相关函数
string.find
string.find 用于在指定的目标字符串中搜索指定的模式。
s = "hello world"
i, j = string.find(s, "hello")
print(i, j) -- 1 5
print(string.find(s, "world")) -- 7 11
print(string.find(s, "l")) -- 3 3
print(string.find(s, "lll")) -- nil
string.match
string.match 返回的是目标字符串中与模式相匹配的那部分子串,而非该模式所在的位置。
print(...
Effective Python 读书笔记 - 第2章 列表与字典
第11条 学会对序列做切片
最基本的写法是用somelist[start:end]这一形式来切割,也就是从start开始一直取到end这个位置,但不包含end本身的元素。切割出来的列表是一份全新的列表
a = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h']
a[:] # ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h']
a[:5] # ['a', 'b', 'c', 'd', 'e']
a[:-1] # ['a', 'b', 'c', 'd', 'e', 'f', 'g']
a[4:] # ['e', 'f', 'g', 'h']
a[-3:]...
Effective Python 读书笔记 - 第1章 培养Pythonic思维
第1条 查询自己使用的Python版本
root@ubuntu:~# python --version
Python 2.7.17
root@ubuntu:~# python3 --version
Python 3.6.9
第2条 遵循PEP 8风格指南
https://www.python.org/dev/peps/pep-0008
编写Python代码时,总是应该遵循PEP 8风格指南。
与广大Python开发者采用同一套代码风格,可以使项目更利于多人协作。
采用一致的风格编写代码,代码的后续修改更容易。
第3条 了解bytes与str的区别
bytes包含的是由8位值所组成的序列,str包含的是由Unicode码点所组成的序列。
我们可以编写辅助...
如何搭建个人博客站点
1、如何使用 github page 部署个人博客
登录 github,点击右上角新建仓库,仓库名填 username.github.io,其中 username 填自己的 github 名称,例如博主的是 hz-bin,则仓库名为 hz-bin.github.io。
进入项目的 Settings->Pages 页面,Source 选择 master,然后点击 Save,则完成部署,即可通过 https://hz-bin.github.io 进行访问了。
2、如何使用 jekyll 和 TeXt 主题编辑博客内容
本地部署 jekyll 环境参考 jekyll 中文文档
本地克隆 TeXt 主题,然后进入到 jekyll-TeXt-them...
Linux 常用命令
echo
作用:在终端输出字符串或变量提取后的值,格式为 echo [字符串 | $变量]。
参数:无
root@ubuntu:~# echo HelloWorld
HelloWorld
root@ubuntu:~# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
date
作用:显示及设置系统的时间或日期,格式为 date [选项] [+指定的格式],+ 开头表示按指定格式输出。
参数:
%H 小时(00 ~ 23)
%I 小时(00...
Effective C++
1、让自己习惯C++
条款01:视C++为一个语言联邦
将 C++ 视为一个由相关语言组成的联邦而非单一语言:C、Object-Oriented C++、Template C++、STL。
C++ 高效编程守则视状况而变化,取决于你使用 C++ 的哪一部分。
条款02:尽量以 const,enum,inline 替换 #define
例如将 #define ASPECT_RATIO 1.653 替换为 const double AspectRatio = 1.653;
对于单纯常量,最好以 const 对象或 enums 替换 #defines。
对于形似函数的宏(macros),最好改用 inline 函数替换 #defines。
条款03:尽可能使...
epoll 使用示例
服务端
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <string.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <sys/epoll.h>
#define SERVER_PORT (7778)
#define EPOLL_MAX_NUM (2048)
#define BUFFER_MAX_LEN ...
Python
python 性能问题
字典、列表、元组初始化用 {} [] () 还是 dict() list() tuple()
import timeit
print(timeit.timeit(stmt='{}', number=10000000))
print(timeit.timeit(stmt='dict()', number=10000000))
输出:
0.1654788
0.83084
import timeit
print(timeit.timeit(stmt='[]', number=10000000))
print(timeit.timeit(stmt='list()', number=10000000))
输出:
0.1816867
0.8409157
impo...
共计 22 篇文章,3 页。