Merge pull request #98 from lamb/patch-1

Update ch1-02.md
This commit is contained in:
Xargin 2021-11-23 19:06:10 +08:00 committed by GitHub
commit 0c0deebddd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -4,7 +4,7 @@
`os`包以跨平台的方式提供了一些与操作系统交互的函数和变量。程序的命令行参数可从os包的Args变量获取os包外部使用os.Args访问该变量。
os.Args变量是一个字符串string的*切片*slice译注slice和Python语言中的切片类似是一个简版的动态数组切片是Go语言的基础概念稍后详细介绍。现在先把切片s当作数组元素序列序列的长度动态变化用`s[i]`访问单个元素,用`s[m:n]`获取子序列译注和python里的语法差不多。序列的元素数目为len(s)。和大多数编程语言类似区间索引时Go言里也采用左闭右开形式区间包括第一个索引元素不包括最后一个因为这样可以简化逻辑。译注比如a = [1, 2, 3, 4, 5], a[0:3] = [1, 2, 3]不包含最后一个元素。比如s[m:n]这个切片0 ≤ m ≤ n ≤ len(s)包含n-m个元素。
os.Args变量是一个字符串string的*切片*slice译注slice和Python语言中的切片类似是一个简版的动态数组切片是Go语言的基础概念稍后详细介绍。现在先把切片s当作数组元素序列序列的长度动态变化用`s[i]`访问单个元素,用`s[m:n]`获取子序列译注和python里的语法差不多。序列的元素数目为len(s)。和大多数编程语言类似区间索引时Go言里也采用左闭右开形式区间包括第一个索引元素不包括最后一个因为这样可以简化逻辑。译注比如a = [1, 2, 3, 4, 5], a[0:3] = [1, 2, 3]不包含最后一个元素。比如s[m:n]这个切片0 ≤ m ≤ n ≤ len(s)包含n-m个元素。
os.Args的第一个元素os.Args[0]是命令本身的名字其它的元素则是程序启动时传给它的参数。s[m:n]形式的切片表达式产生从第m个元素到第n-1个元素的切片下个例子用到的元素包含在os.Args[1:len(os.Args)]切片中。如果省略切片表达式的m或n会默认传入0或len(s)因此前面的切片可以简写成os.Args[1:]。