GoToPy is a Go to Python converter -- translates Go code into Python code.
To install, do standard:
$ go install github.com/go-python/gotopy@latestIt is based on the Go gofmt command source code and the go printer package, which parses Go files and writes them out according to standard go formatting.
We have modified the printer code in the pyprint package to instead print out Python code.
The -gopy flag generates GoPy specific Python code, including:
nil->go.nil[]string{...}->go.Slice_string([...])etc for int, float64, float32
The -gogi flag generates GoGi specific Python code, including:
- struct tags generate:
self.SetTags()call, for thepygiv.ClassViewObjclass, which then provides an automatic GUI view with tag-based formatting of struct fields.
-
switch -> ifs.. -- grab switch expr and put into each if
-
string .contains -> "el" in str
-
map access with 2 vars = if el in map: mv = map[el]
-
for range with 2 vars = enumerate(slice)