刚开始学习 Go(人们说“Go”还是“Golang”?)我运行了 hello world 示例。我已经设置了 GOROOT 和 GOPATH。现在我想做一些更高级的事情,例如打开 csv 文件,为此我在这里找到了一个教程为了使这个脚本工作,我需要正在导入的包,例如“bufio”、“encoding/csv”等。我是否必须手动搜索https://github.com/golang/go/wiki/Projects或其他一些存储库,将它们下载并解压缩到我的 GOPATH“pkg”目录中?或者 Go/Golang 是否有与 Python 的“pip install”等效的东西可以为我做到这一点?import ( "bufio" "encoding/csv" "os" "fmt" "io")func main() { // Load a TXT file. f, _ := os.Open("C:\\Users\\bb\\Documents\\Dropbox\\Data\\bc hydro tweets\\bchtweets.csv") // Create a new reader. r := csv.NewReader(bufio.NewReader(f)) for { record, err := r.Read() // Stop at EOF. if err == io.EOF { break } // Display record. // ... Display record length. // ... Display all individual elements of the slice. fmt.Println(record) fmt.Println(len(record)) for value := range record { fmt.Printf(" %v\n", record[value]) } }}
3 回答
青春有我
TA贡献1784条经验 获得超8个赞
阅读这个美丽文档部分的每一行:https : //golang.org/doc/code.html#Organization
顺便说一句,导入部分中的所有包都来自标准库。因此,您不必为此示例安装任何东西。
安装软件包的最佳方法是go get
简单地将 git 存储库克隆到您的,$GOPATH/src
并且您应该尽可能长时间地坚持使用它。如果您必须使用某个包版本,您可以为指定的提交创建 fork 和go get
该 fork 或使用许多 vendoring 工具之一https://github.com/golang/go/wiki/PackageManagementTools
catspeake
TA贡献1111条经验 获得超0个赞
该滑翔包管理器也许是你最亲密的选项点子。您有配置(和锁定)文件,可以指定版本等。
在 Go 1.6 发布之前,您需要GO15VENDOREXPERIMENT=1
为该go
工具设置环境变量以提取vendor/
文件夹中的包。在 Go 1.6 中,这将默认开启。Glide 将包存储在一个vendor/
文件夹而不是GOPATH
(即使根项目需要在GOPATH
)中,以便不同的应用程序可以拥有并定期使用不同版本的依赖项。
如果您想要一些不同的东西,wiki 上列出了许多包管理器。
披露:我是 Glide 的开发人员之一。Pip 是它的灵感来源之一。
- 3 回答
- 0 关注
- 269 浏览
添加回答
举报
0/150
提交
取消