Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Go / golang - does it have equivalent of python "pip install" to install packages?

Tags:

go

Have just started learning about Go (do people say "Go" or "Golang"?)

I got the hello world example running. I have my GOROOT AND GOPATH set up.

Now I want to do something bit more advanced, for example open csv file, for which I found a tutorial to do that here

In order to make this script work, I need the packages that are being imported eg "bufio", "encoding/csv", etc.

Do I have to manually search https://github.com/golang/go/wiki/Projects or some other repository, download and unzip these into my GOPATH "pkg" directory?

Or does Go/Golang have something equivalent to Python's "pip install" that would do this for me?

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])
    }
    }
}
like image 321
curtisp Avatar asked Jan 03 '16 20:01

curtisp


People also ask

What can I use instead of pip to install?

npm, Homebrew, Yarn, RequireJS, and Bower are the most popular alternatives and competitors to pip.

What is the difference between pip install and Python pip install?

They do exactly the same thing. In fact, the docs for distributing Python modules were just updated to suggest using python -m pip instead of the pip executable, because it's easier to tell which version of python is going to be used to actually run pip that way.

Is pip install only for Python?

pip is a standard package manager used to install and maintain packages for Python.

What tool can be used for Python package installation?

pip is the package installer for Python. You can use pip to install packages from the Python Package Index (PyPI) and other indexes.


2 Answers

Go has go get which is similar to pip install in Python. (ref)

UPDATE: Starting in Go 1.17, installing executables with go get is deprecated. go install may be used instead.(ref)

like image 51
Patrick Lee Avatar answered Sep 28 '22 12:09

Patrick Lee


Read every single line of this beautiful documentation's section: https://golang.org/doc/code.html#Organization

BTW, all packages you have in your import section are from standard library. So you don't have to install anything for this example.

Best way to install a package is go get which simply clones a git repo to your $GOPATH/src and you should stick to it as long as you can. If you must use some package version you can create fork for a specified commit and go get that fork or use one of many vendoring toolds https://github.com/golang/go/wiki/PackageManagementTools

like image 42
kopiczko Avatar answered Sep 28 '22 13:09

kopiczko