Go 语言圣经 - 2. 程序结构 2.3. 变量var 声明语句可以创建一个特定类型的变量,然后给变量附加一个名字,并且设置变量的初始值。变量声明的一般语法如下: var 变量名字 类型 = 表达式 其中 类型 或 = 表达式 两个部分可以省略其中的一个。如果省略的是类型信息,那么将根据初始化表达式来推导变量的类型信息。如果初始化表达式被省略,那么将用零值初始化该变量。 数值类型变量对应的零值是 0,布尔类型变量对应的零值是 f 2019-07-24 Go 语言圣经 Go
Go 语言圣经 - 1. 入门 1.2. 命令行参数通过 os.Args 切片能够拿到程序启动时得到的命令行参数: package main import "fmt" "os" ) func main() { var s, sep string for _, arg := range os.Args { s += sep + arg sep = & 2019-07-18 Go 语言圣经 Go
Chapter 12 - 继承的优缺点 12.1 子类化内置类型很麻烦使用 C 语言实现的内置类型不会调用用户顶以的类覆盖的特殊方法,如 dict 的子类覆盖的 __getitem__() 方法不会被内置类型的 get() 方法调用。 具体我们可以看看下面的例子: In [1]: class DoppelDict(dict): ...: def __setitem__(self, key, value): .. 2019-07-13 Fluent Python Python
Chapter 11 - 函数装饰器和闭包 11.1 Python 文化中的接口和协议接口在动态类型语言中是怎么运作的呢?首先,基本的事实是,Python 语言没有 interface 关键字,而且除了抽象基类,每个类都有接口: 类实现或继承的公开属性(方法或数据属性),包括特殊方法,如 __getitem__ 或 __add__。 另一方面,不要觉得把公开数据属性放入对象的接口中不妥,因为如果需要,总能实现读值方法和设值方法,把数据属性变 2019-05-04 Fluent Python Python
Chapter 10 - 序列的修改、散列和切片 10.2 与旧的类兼容 序列类型的构造方法最好接受可迭代的对象为参数,因为所有内置的序列类型都是这样做的。 reprlib 能够为某些对象生成长度有限的表示形式: In [1]: import reprlib In [3]: a Out[3]: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, ... 999] In [4]: reprlib.repr(a 2019-04-27 Fluent Python Python
PEP 302 - New Import Hooks Abstract该提议为了使得开发者能够对 Python 的模块导入机制进行更好的自定义,提出了一种新的导入钩子,这种新型的机制能够更好注入到现有的导入机制中,并且对模块的查找和导入提供了更细粒度的控制。 Motivation在该提议出现之前,如果开发者要自定义模块的导入机制,需要重载内置的 __import__ 函数,但是重载该函数十分麻烦,需要完全实现整个 import 的机制,还需要处理各种 2019-04-21 Python Daily Python
Chapter 4 - 更多的 bash shell 命令 管理进程4.1 检测程序4.1.1 探查进程Linux 系统中使用的 GNU ps 命令支持3种不同类型的命令行参数: Unix 风格的参数,前面加单破折线 BSD 风格的参数,前面不加破折线 GNU 风格的长参数,前面加双破折线 Unix 风格的参数使用 ps 命令的关键不在于记住所有可用的参数,而在于记住最有用的那些参数。 如果你想查看系统上运行的所有进程,可用 -ef 参数组合,-e 参 2019-04-20 Linux CL and Shell Programing Linux Shell
Chapter 3 - 基本的 bash shell 命令 3.4 浏览文件系统3.4.1 Linux 文件系统Linux 虚拟目录中比较复杂的部分是它如何协调管理各个存储设备。在 Linux PC 上安装的第 一块硬盘称为根驱动器。根驱动器包含了虚拟目录的核心,其他目录都是从那里开始构建的。 Linux 会在根驱动器上创建一些特别的目录,我们称之为挂载点(mount point)。挂载点是虚拟目录中用于分配额外存储设备的目录。虚拟目录会让文件和目录出现在 2019-04-20 Linux CL and Shell Programing Linux Shell
Chapter 2 - 走进 shell 2.1 进入命令行在图形化桌面出现之前,与 Unix 系统进行交互的唯一方式就是借助由 shell 所提供的文本命令行界面(command line interface,CLI)。CLI 只能接受文本输入,也只能显示出文本和基本的图形输出。 进入 CLI 有两种方式: 让 Linux 退出图形化桌面模式,进入文本模式,这种模式称作 Linux 控制台,因为其模拟了早起的硬接线控制台终端。Linu 2019-04-20 Linux CL and Shell Programing Linux Shell
Chapter 1 - 初识 Linux shell 1.1 什么是 LinuxLinux 可以划分为四个部分: Linux 内核 GNU 工具 图形化桌面软件 应用软件 1.1.1 深入探究 Linux 内核内核主要负责以下四种功能: 系统内存管理 软件程序管理 硬件设备管理 文件系统管理 Linux 系统将硬件设备划分为三种: 字符型设备文件:每次只能处理一个字符的设备。 块设备文件:每次能处理大块数据的设备,比如硬盘。 网络设备文件: 2019-04-20 Linux CL and Shell Programing Linux Shell