主页

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码点所组成的序列。 我们可以编写辅助...

阅读更多

More Effective C++ 读书笔记

条款 1:仔细区别 pointers 和 references 没有空引用,引用必须有初始值,指针可以是空指针。 指针可以被重新赋值,指向另一个对象,引用却总是指向(代表)它最初获得的那个对象。 一般而言,当你需要考虑“不指向任何对象”的可能性时,或是考虑“在不同时间指向不同对象”的能力时,你就应该采用 pointer。前一种情况你可以将 pointer设为 null,后一种情况你可以改变 pointer 所指对象。而当你确定“总是会代表某个对象”,而且“一旦代表了该对象就不能够再改变”,那么你应该选用reference。 当你知道你需要指向某个东西,而且绝不会改变指向其他东西,或是当你实现一个操作符而其语法需求无法由 pointers 达成,你就应该选择refere...

阅读更多

如何搭建个人博客站点

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:尽可能使...

阅读更多