主页

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...

阅读更多