{"id":13468711,"url":"https://github.com/nottheswimmer/pytago","last_synced_at":"2026-02-12T00:19:45.226Z","repository":{"id":37974157,"uuid":"373991954","full_name":"nottheswimmer/pytago","owner":"nottheswimmer","description":"A source-to-source transpiler for Python to Go translation","archived":false,"fork":false,"pushed_at":"2023-04-24T03:08:10.000Z","size":420,"stargazers_count":396,"open_issues_count":12,"forks_count":28,"subscribers_count":11,"default_branch":"main","last_synced_at":"2025-09-06T18:03:55.442Z","etag":null,"topics":["abstract-syntax-tree","ast","codegen","compiler","go","golang","mit","parsing","programming","programming-languages","python","transpiler"],"latest_commit_sha":null,"homepage":"https://pytago.dev/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nottheswimmer.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2021-06-05T01:00:47.000Z","updated_at":"2025-06-27T18:22:02.000Z","dependencies_parsed_at":"2024-01-18T20:05:25.608Z","dependency_job_id":null,"html_url":"https://github.com/nottheswimmer/pytago","commit_stats":{"total_commits":175,"total_committers":5,"mean_commits":35.0,"dds":0.2571428571428571,"last_synced_commit":"da3b6d3d6412a601b768fe93e065d16696a2fad3"},"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"purl":"pkg:github/nottheswimmer/pytago","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nottheswimmer%2Fpytago","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nottheswimmer%2Fpytago/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nottheswimmer%2Fpytago/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nottheswimmer%2Fpytago/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nottheswimmer","download_url":"https://codeload.github.com/nottheswimmer/pytago/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nottheswimmer%2Fpytago/sbom","scorecard":{"id":695430,"data":{"date":"2025-08-11","repo":{"name":"github.com/nottheswimmer/pytago","commit":"d8a8a09d041c053267b57c2d9f8f757446b064b9"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.6,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Code-Review","score":1,"reason":"Found 3/23 approved changesets -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/docker-image.yml:1","Warn: no topLevel permission defined: .github/workflows/python-app.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docker-image.yml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/nottheswimmer/pytago/docker-image.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker-image.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/nottheswimmer/pytago/docker-image.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/python-app.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/nottheswimmer/pytago/python-app.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/python-app.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/nottheswimmer/pytago/python-app.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/python-app.yml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/nottheswimmer/pytago/python-app.yml/main?enable=pin","Warn: containerImage not pinned by hash: Dockerfile:1: pin your Docker image by updating python:3.10.4-alpine3.14 to python:3.10.4-alpine3.14@sha256:fb93ca595ad82020cc52ff60604cddc1a6d393229ef5ecc8f6ac7c7fb52bacda","Warn: goCommand not pinned by hash: Dockerfile:105","Warn: goCommand not pinned by hash: Dockerfile:106","Warn: goCommand not pinned by hash: Dockerfile:107","Warn: pipCommand not pinned by hash: Dockerfile:115","Warn: goCommand not pinned by hash: .github/workflows/python-app.yml:24","Warn: goCommand not pinned by hash: .github/workflows/python-app.yml:26","Warn: goCommand not pinned by hash: .github/workflows/python-app.yml:28","Warn: pipCommand not pinned by hash: .github/workflows/python-app.yml:35","Warn: pipCommand not pinned by hash: .github/workflows/python-app.yml:36","Warn: pipCommand not pinned by hash: .github/workflows/python-app.yml:37","Info:   0 out of   4 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 third-party GitHubAction dependencies pinned","Info:   1 out of   7 goCommand dependencies pinned","Info:   0 out of   4 pipCommand dependencies pinned","Info:   0 out of   1 containerImage dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 10 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":0,"reason":"12 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: PYSEC-2018-66 / GHSA-562c-5r94-xh97","Warn: Project is vulnerable to: PYSEC-2019-179 / GHSA-5wv5-4vpf-pj6m","Warn: Project is vulnerable to: PYSEC-2023-62 / GHSA-m2qf-hxjv-5gpq","Warn: Project is vulnerable to: GHSA-43qf-4rqw-9q2g","Warn: Project is vulnerable to: GHSA-7rxf-gvfg-47g4","Warn: Project is vulnerable to: GHSA-84pr-m4jr-85g5","Warn: Project is vulnerable to: GHSA-8vgw-p6qm-5gr7","Warn: Project is vulnerable to: PYSEC-2024-71 / GHSA-hxwh-jpp2-84pm","Warn: Project is vulnerable to: PYSEC-2020-43 / GHSA-xc3p-ff3m-f46v","Warn: Project is vulnerable to: PYSEC-2018-55 / GHSA-32pc-xphx-q4f6","Warn: Project is vulnerable to: GHSA-hc5x-x2vx-497g","Warn: Project is vulnerable to: GHSA-w3h3-4rj7-4ph4"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-22T03:31:33.670Z","repository_id":37974157,"created_at":"2025-08-22T03:31:33.670Z","updated_at":"2025-08-22T03:31:33.670Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29350405,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-11T20:11:40.865Z","status":"ssl_error","status_checked_at":"2026-02-11T20:10:41.637Z","response_time":97,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["abstract-syntax-tree","ast","codegen","compiler","go","golang","mit","parsing","programming","programming-languages","python","transpiler"],"created_at":"2024-07-31T15:01:17.273Z","updated_at":"2026-02-12T00:19:45.218Z","avatar_url":"https://github.com/nottheswimmer.png","language":"Python","funding_links":[],"categories":["Python","Python Compilers"],"sub_categories":[],"readme":"# ![pytago](https://gist.githubusercontent.com/nottheswimmer/34c530a80dc636a62ca2ebfca30af2a3/raw/e5b5d3fc3de90b6c7453d44998585f6b7376099f/pytago.svg)\n\nPytago is a source-to-source transpiler that converts some Python into human-readable Go.\n\n## Installation and usage\n\nThere are two \"officially\" supported ways to use Pytago:\n1. A web application you can run via docker\n2. A locally-installed command-line tool\n\n### Web application\n\n#### Prerequisites\n\n- [Docker](https://docs.docker.com/get-docker/)\n\n#### Installation and Usage\n\n##### Running pre-built container\n```\ndocker run -p 8080:8080 -e PORT=8080 -it nottheswimmer/pytago\n```\n\n##### Building from source (Alternative)\n```\ngit clone https://github.com/nottheswimmer/pytago/\ncd pytago\ndocker build -t pytago .\ndocker run -p 8080:8080 -e PORT=8080 -it pytago\n```\n\n##### Usage\n```\n# Open the user interface\nopen http://127.0.0.1:8080/\n\n# API\ncurl --request POST 'http://127.0.0.1:8080/' \\\n  --header 'Content-Type: application/json'  \\\n  --data-raw '{\"py\": \"print(\\\"Hello World\\\")\"}'\n```\n\n### Local command-line application\n\n#### Prerequisites\n\n- [Go 1.18.x](https://golang.org/dl/)\n- [Python 3.10.x](https://www.python.org/downloads/release/python-3100b3/)\n  - No, it will not work on 3.9 due to the (heavy) usage of match statements.\n- Required libraries for post-processing:\n  ```\n  go install golang.org/x/tools/cmd/goimports@latest\n  go install mvdan.cc/gofumpt@latest\n  go install github.com/segmentio/golines@latest\n  export PATH=\"$PATH:$HOME/go/bin\"\n  ```\n#### Installation\n\n##### via pip\n```\npip install pytago\n```\n\n##### via setup.py (dev)\n\n```\ngit clone https://github.com/nottheswimmer/pytago/\ncd pytago\npip install -e .\n```\n\n##### via setup.py\n\n```\ngit clone https://github.com/nottheswimmer/pytago/\ncd pytago\npip install .\n```\n\n#### Usage\n\n```\nusage: pytago [-h] [-o OUTFILE] INFILE\n\npositional arguments:\n  INFILE                read python code from INFILE\n\noptions:\n  -h, --help            show this help message and exit\n  -o OUTFILE, --out OUTFILE\n                        write go code to OUTFILE\n```\n\n## Examples\n\nAll examples presented here are used as tests for the program.\n\n### listappend\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    a = [1, 2, 3]\n    a.append(4)\n    print(a)\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\ta := []int{1, 2, 3}\n\ta = append(a, 4)\n\tfmt.Println(a)\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### abs\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    print(abs(-6))\n    print(abs(3))\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\t\"math\"\n)\n\nfunc main() {\n\tfmt.Println(math.Abs(-6))\n\tfmt.Println(math.Abs(3))\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### helloworld\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    print(\"hello world\")\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\tfmt.Println(\"hello world\")\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### input\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    print(\"Hi, what's your name?\")\n    name = input(\"Name: \")\n    print(\"Hi\", name, \"how old are you?\")\n    age = int(input(\"Age: \"))\n    print(\"Describe yourself in one sentence:\")\n    description = input()\n    print(\"So your name is\", name, \"and you are\", age, \"years old, and your description is\", '\"' + description + '\"')\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"bufio\"\n\t\"fmt\"\n\t\"os\"\n\t\"strconv\"\n\t\"strings\"\n)\n\nfunc main() {\n\tfmt.Println(\"Hi, what's your name?\")\n\tname := func(msg string) string {\n\t\tfmt.Print(msg)\n\t\ttext, _ := bufio.NewReader(os.Stdin).ReadString('\\n')\n\t\treturn strings.ReplaceAll(text, \"\\n\", \"\")\n\t}(\"Name: \")\n\tfmt.Println(\"Hi\", name, \"how old are you?\")\n\tage := func() int {\n\t\ti, err := strconv.ParseInt(func(msg string) string {\n\t\t\tfmt.Print(msg)\n\t\t\ttext, _ := bufio.NewReader(os.Stdin).ReadString('\\n')\n\t\t\treturn strings.ReplaceAll(text, \"\\n\", \"\")\n\t\t}(\"Age: \"), 10, 64)\n\t\tif err != nil {\n\t\t\tpanic(err)\n\t\t}\n\t\treturn int(i)\n\t}()\n\tfmt.Println(\"Describe yourself in one sentence:\")\n\tdescription := func() string {\n\t\ttext, _ := bufio.NewReader(os.Stdin).ReadString('\\n')\n\t\treturn strings.ReplaceAll(text, \"\\n\", \"\")\n\t}()\n\tfmt.Println(\n\t\t\"So your name is\",\n\t\tname,\n\t\t\"and you are\",\n\t\tage,\n\t\t\"years old, and your description is\",\n\t\t\"\\\"\"+description+\"\\\"\",\n\t)\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### randomness\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\nimport random\n\n\ndef main():\n    print(random.random())\n    print(random.randrange(9000, 10000))\n    print(random.randint(9000, 10000))\n    items = [\"Hello\", 3, \"Potato\", \"Cake\"]\n    print(random.choice(items))\n    random.shuffle(items)\n    print(items)\n    u = random.uniform(200, 500)\n    print(u)\n    if random.random() \u003e 0.5:\n        print(\"50/50\")\n\n    names = ['Kitchen', 'Animal', 'State', 'Tasty', 'Big', 'City', 'Fish', 'Pizza', 'Goat', 'Salty', 'Sandwich',\n             'Lazy', 'Fun']\n    company_type = ['LLC', 'Inc', 'Company', 'Corporation']\n    company_cuisine = ['Pizza', 'Bar Food', 'Fast Food', 'Italian', 'Mexican', 'American', 'Sushi Bar', 'Vegetarian']\n    for x in range(1, 501):\n        business = {\n            'name': names[random.randint(0, (len(names) - 1))] + ' ' + names[\n                random.randint(0, (len(names) - 1))] + ' ' + company_type[random.randint(0, (len(company_type) - 1))],\n            'rating': random.randint(1, 5),\n            'cuisine': company_cuisine[random.randint(0, (len(company_cuisine) - 1))]\n        }\n        print(business)\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\t\"math/rand\"\n\t\"time\"\n)\n\nfunc init() {\n\trand.Seed(time.Now().UnixNano())\n}\n\nfunc main() {\n\tfmt.Println(rand.Float64())\n\tfmt.Println(func(start int, stop int) int {\n\t\tn := stop - start\n\t\treturn rand.Intn(n) + start\n\t}(9000, 10000))\n\tfmt.Println(func(start int, stop int) int {\n\t\tn := stop - start\n\t\treturn rand.Intn(n) + start\n\t}(9000, 10000+1))\n\titems := []interface{}{\"Hello\", 3, \"Potato\", \"Cake\"}\n\tfmt.Println(items[rand.Intn(len(items))])\n\trand.Shuffle(len(items), func(i int, j int) {\n\t\titems[i], items[j] = items[j], items[i]\n\t})\n\tfmt.Println(items)\n\tu := func(a float64, b float64) float64 {\n\t\treturn rand.Float64()*(b-a) + a\n\t}(200, 500)\n\tfmt.Println(u)\n\tif rand.Float64() \u003e 0.5 {\n\t\tfmt.Println(\"50/50\")\n\t}\n\tnames := []string{\n\t\t\"Kitchen\",\n\t\t\"Animal\",\n\t\t\"State\",\n\t\t\"Tasty\",\n\t\t\"Big\",\n\t\t\"City\",\n\t\t\"Fish\",\n\t\t\"Pizza\",\n\t\t\"Goat\",\n\t\t\"Salty\",\n\t\t\"Sandwich\",\n\t\t\"Lazy\",\n\t\t\"Fun\",\n\t}\n\tcompany_type := []string{\"LLC\", \"Inc\", \"Company\", \"Corporation\"}\n\tcompany_cuisine := []string{\n\t\t\"Pizza\",\n\t\t\"Bar Food\",\n\t\t\"Fast Food\",\n\t\t\"Italian\",\n\t\t\"Mexican\",\n\t\t\"American\",\n\t\t\"Sushi Bar\",\n\t\t\"Vegetarian\",\n\t}\n\tfor x := 1; x \u003c 501; x++ {\n\t\tbusiness := map[string]interface{}{\"name\": names[func(start int, stop int) int {\n\t\t\tn := stop - start\n\t\t\treturn rand.Intn(n) + start\n\t\t}(0, len(names)-1+1)] + \" \" + names[func(start int, stop int) int {\n\t\t\tn := stop - start\n\t\t\treturn rand.Intn(n) + start\n\t\t}(0, len(names)-1+1)] + \" \" + company_type[func(start int, stop int) int {\n\t\t\tn := stop - start\n\t\t\treturn rand.Intn(n) + start\n\t\t}(0, len(company_type)-1+1)], \"rating\": func(start int, stop int) int {\n\t\t\tn := stop - start\n\t\t\treturn rand.Intn(n) + start\n\t\t}(1, 5+1), \"cuisine\": company_cuisine[func(start int, stop int) int {\n\t\t\tn := stop - start\n\t\t\treturn rand.Intn(n) + start\n\t\t}(0, len(company_cuisine)-1+1)]}\n\t\tfmt.Println(business)\n\t}\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### string_methods\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    lower = \"hello world\"\n    crazy = \"HeLLo WoRlD\"\n    upper = \"HELLO WORLD\"\n    lol = \"---LOL---\"\n    hearts = \"🧡💛💚💙💜\"\n    arabic_indic_digit = \"٠\"\n    whitespace = \" \\v\\f\\t\\r\\n\"\n    s_hello_s = whitespace + lower + whitespace\n    multiline = lower + \"\\n\" + crazy + \"\\r\\n\" + upper + \"\\n\"\n\n    print(crazy.capitalize())\n    print(lower.endswith(\"world\"))\n    print(lower.find(\" \"))\n    print(lower.find(\" \", 2))\n    print(upper.find(\" \", 7, 8))\n    print(lower.index(\" \"))\n    print(lower.index(\" \", 2))\n    print(upper.index(\" \", 2, 8))\n    print(lower.isalnum())\n    print(hearts.isascii())\n    print(arabic_indic_digit.isdecimal())\n    print(arabic_indic_digit.isdigit())\n    print(lower.islower())\n    print(arabic_indic_digit.isnumeric())\n    print(hearts.isprintable())\n    print(whitespace.isspace())\n    print(upper.isupper())\n    print(hearts.join([lower, crazy, upper]))\n    print(crazy.lower())\n    print(s_hello_s.lstrip() + \"|\")\n    print(lower.lstrip(\"h\"))\n    print(lower.removeprefix(\"hello \"))\n    print(lower.removesuffix(\" world\"))\n    print(lower.replace(\"world\", \"gophers\"))\n    print(upper.replace(\"O\", \"OOOOO\", 1))\n    print(upper.rfind(\"O\"))\n    print(upper.rfind(\"O\", 1))\n    print(upper.rfind(\"O\", 1, 6))\n    print(upper.rindex(\"O\"))\n    print(upper.rindex(\"O\", 1))\n    print(upper.rindex(\"O\", 1, 6))\n    print(s_hello_s.rstrip() + \"|\")\n    print(lower.rstrip(\"d\"))\n    print(lower.split())\n    print(upper.split(\"L\"))\n    print(upper.split(\"L\", 1))\n    print(multiline.splitlines())\n    print(upper.startswith(\"HELLO\"))\n    print(s_hello_s.strip() + \"|\")\n    print(lol.strip(\"-\"))\n    print(crazy.title())\n    print(crazy.upper())\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"bufio\"\n\t\"errors\"\n\t\"fmt\"\n\t\"strings\"\n\t\"unicode\"\n)\n\nfunc main() {\n\tlower := \"hello world\"\n\tcrazy := \"HeLLo WoRlD\"\n\tupper := \"HELLO WORLD\"\n\tlol := \"---LOL---\"\n\thearts := \"🧡💛💚💙💜\"\n\tarabic_indic_digit := \"٠\"\n\twhitespace := \" \\u000b\\f\\t\\r\\n\"\n\ts_hello_s := whitespace + lower + whitespace\n\tmultiline := lower + \"\\n\" + crazy + \"\\r\\n\" + upper + \"\\n\"\n\tfmt.Println(strings.ToUpper(crazy[0:1]) + strings.ToLower(crazy[1:]))\n\tfmt.Println(strings.HasSuffix(lower, \"world\"))\n\tfmt.Println(strings.Index(lower, \" \"))\n\tfmt.Println(func() int {\n\t\tif r := strings.Index(lower[2:], \" \"); r != -1 {\n\t\t\treturn r + 2\n\t\t}\n\t\treturn -1\n\t}())\n\tfmt.Println(func() int {\n\t\tif r := strings.Index(upper[7:8], \" \"); r != -1 {\n\t\t\treturn r + 7\n\t\t}\n\t\treturn -1\n\t}())\n\tfmt.Println(func(X string, sub string) int {\n\t\tif i := strings.Index(X, sub); i != -1 {\n\t\t\treturn i\n\t\t}\n\t\tpanic(errors.New(\"ValueError: substring not found\"))\n\t}(lower, \" \"))\n\tfmt.Println(func(X string, sub string, start int) int {\n\t\tif i := func() int {\n\t\t\tif r := strings.Index(X[start:], sub); r != -1 {\n\t\t\t\treturn r + start\n\t\t\t}\n\t\t\treturn -1\n\t\t}(); i != -1 {\n\t\t\treturn i\n\t\t}\n\t\tpanic(errors.New(\"ValueError: substring not found\"))\n\t}(lower, \" \", 2))\n\tfmt.Println(func(X string, sub string, start int, end int) int {\n\t\tif i := func() int {\n\t\t\tif r := strings.Index(X[start:end], sub); r != -1 {\n\t\t\t\treturn r + start\n\t\t\t}\n\t\t\treturn -1\n\t\t}(); i != -1 {\n\t\t\treturn i\n\t\t}\n\t\tpanic(errors.New(\"ValueError: substring not found\"))\n\t}(upper, \" \", 2, 8))\n\tfmt.Println(func(X string) bool {\n\t\tfor _, r := range X {\n\t\t\tif !((unicode.IsLetter(r) || unicode.IsDigit(r)) \u0026\u0026 (unicode.IsDigit(r) || unicode.IsNumber(r))) {\n\t\t\t\treturn false\n\t\t\t}\n\t\t}\n\t\treturn true\n\t}(lower))\n\tfmt.Println(func(X string) bool {\n\t\tfor _, r := range X {\n\t\t\tif r \u003e unicode.MaxASCII {\n\t\t\t\treturn false\n\t\t\t}\n\t\t}\n\t\treturn true\n\t}(hearts))\n\tfmt.Println(func(X string) bool {\n\t\tfor _, r := range X {\n\t\t\tif !unicode.Is(unicode.Nd, r) {\n\t\t\t\treturn false\n\t\t\t}\n\t\t}\n\t\treturn len(X) != 0\n\t}(arabic_indic_digit))\n\tfmt.Println(func(X string) bool {\n\t\tfor _, r := range X {\n\t\t\tif !unicode.IsDigit(r) {\n\t\t\t\treturn false\n\t\t\t}\n\t\t}\n\t\treturn len(X) != 0\n\t}(arabic_indic_digit))\n\tfmt.Println(func(X string) bool {\n\t\tlower_found := false\n\t\tfor _, r := range X {\n\t\t\tif !unicode.IsLower(r) {\n\t\t\t\tif !unicode.IsSpace(r) {\n\t\t\t\t\treturn false\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tlower_found = true\n\t\t\t}\n\t\t}\n\t\treturn lower_found \u0026\u0026 len(X) != 0\n\t}(lower))\n\tfmt.Println(func(X string) bool {\n\t\tfor _, r := range X {\n\t\t\tif !(unicode.IsDigit(r) || unicode.IsNumber(r)) {\n\t\t\t\treturn false\n\t\t\t}\n\t\t}\n\t\treturn len(X) != 0\n\t}(arabic_indic_digit))\n\tfmt.Println(func(X string) bool {\n\t\tfor _, r := range X {\n\t\t\tif !unicode.IsPrint(r) {\n\t\t\t\treturn false\n\t\t\t}\n\t\t}\n\t\treturn true\n\t}(hearts))\n\tfmt.Println(func(X string) bool {\n\t\tfor _, r := range X {\n\t\t\tif !unicode.IsSpace(r) {\n\t\t\t\treturn false\n\t\t\t}\n\t\t}\n\t\treturn len(X) != 0\n\t}(whitespace))\n\tfmt.Println(func(X string) bool {\n\t\tupper_found := false\n\t\tfor _, r := range X {\n\t\t\tif !unicode.IsUpper(r) {\n\t\t\t\tif !unicode.IsSpace(r) {\n\t\t\t\t\treturn false\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tupper_found = true\n\t\t\t}\n\t\t}\n\t\treturn upper_found \u0026\u0026 len(X) != 0\n\t}(upper))\n\tfmt.Println(strings.Join([]string{lower, crazy, upper}, hearts))\n\tfmt.Println(strings.ToLower(crazy))\n\tfmt.Println(strings.TrimLeftFunc(s_hello_s, unicode.IsSpace) + \"|\")\n\tfmt.Println(strings.TrimLeft(lower, \"h\"))\n\tfmt.Println(strings.TrimPrefix(lower, \"hello \"))\n\tfmt.Println(strings.TrimSuffix(lower, \" world\"))\n\tfmt.Println(strings.ReplaceAll(lower, \"world\", \"gophers\"))\n\tfmt.Println(strings.Replace(upper, \"O\", \"OOOOO\", 1))\n\tfmt.Println(strings.LastIndex(upper, \"O\"))\n\tfmt.Println(func() int {\n\t\tif r := strings.LastIndex(upper[1:], \"O\"); r != -1 {\n\t\t\treturn r + 1\n\t\t}\n\t\treturn -1\n\t}())\n\tfmt.Println(func() int {\n\t\tif r := strings.LastIndex(upper[1:6], \"O\"); r != -1 {\n\t\t\treturn r + 1\n\t\t}\n\t\treturn -1\n\t}())\n\tfmt.Println(func(X string, sub string) int {\n\t\tif i := strings.LastIndex(X, sub); i != -1 {\n\t\t\treturn i\n\t\t}\n\t\tpanic(errors.New(\"ValueError: substring not found\"))\n\t}(upper, \"O\"))\n\tfmt.Println(func(X string, sub string, start int) int {\n\t\tif i := func() int {\n\t\t\tif r := strings.LastIndex(X[start:], sub); r != -1 {\n\t\t\t\treturn r + start\n\t\t\t}\n\t\t\treturn -1\n\t\t}(); i != -1 {\n\t\t\treturn i\n\t\t}\n\t\tpanic(errors.New(\"ValueError: substring not found\"))\n\t}(upper, \"O\", 1))\n\tfmt.Println(func(X string, sub string, start int, end int) int {\n\t\tif i := func() int {\n\t\t\tif r := strings.LastIndex(X[start:end], sub); r != -1 {\n\t\t\t\treturn r + start\n\t\t\t}\n\t\t\treturn -1\n\t\t}(); i != -1 {\n\t\t\treturn i\n\t\t}\n\t\tpanic(errors.New(\"ValueError: substring not found\"))\n\t}(upper, \"O\", 1, 6))\n\tfmt.Println(strings.TrimRightFunc(s_hello_s, unicode.IsSpace) + \"|\")\n\tfmt.Println(strings.TrimRight(lower, \"d\"))\n\tfmt.Println(strings.Fields(lower))\n\tfmt.Println(strings.Split(upper, \"L\"))\n\tfmt.Println(strings.SplitN(upper, \"L\", 1))\n\tfmt.Println(func(s string) (lines []string) {\n\t\tsc := bufio.NewScanner(strings.NewReader(s))\n\t\tfor sc.Scan() {\n\t\t\tlines = append(lines, sc.Text())\n\t\t}\n\t\treturn\n\t}(multiline))\n\tfmt.Println(strings.HasPrefix(upper, \"HELLO\"))\n\tfmt.Println(strings.TrimSpace(s_hello_s) + \"|\")\n\tfmt.Println(strings.Trim(lol, \"-\"))\n\tfmt.Println(func(s string) string {\n\t\tws := true\n\t\tvar sb strings.Builder\n\t\tfor _, r := range s {\n\t\t\tif unicode.IsSpace(r) {\n\t\t\t\tws = true\n\t\t\t\tsb.WriteRune(r)\n\t\t\t} else if ws {\n\t\t\t\tws = false\n\t\t\t\tsb.WriteRune(unicode.ToUpper(r))\n\t\t\t} else {\n\t\t\t\tsb.WriteRune(unicode.ToLower(r))\n\t\t\t}\n\t\t}\n\t\treturn sb.String()\n\t}(crazy))\n\tfmt.Println(strings.ToUpper(crazy))\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### list_methods\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    l1 = [1]\n    l2 = [\"hello\", \"how\", \"are\", \"you?\"]\n    l3 = [6.2, 1.6, 1.2, 20.1]\n\n    l1.append(2)\n    print(l1)\n\n    l1.extend([4, 5])\n    print(l1)\n\n    l1.insert(3, 3)\n    print(l1)\n\n    print(l1.index(2))\n\n    print(l1.count(3))\n\n    l1.remove(3)\n    print(l1)\n\n    while l1:\n        print(l1.pop())\n\n    l3.clear()\n    print(l3)\n\n    l1.sort()\n    print(l1)\n    l2.sort()\n    print(l2)\n    l3.sort()\n    print(l3)\n    l3.sort(reverse=True)\n    print(l3)\n\n    l2.reverse()\n    print(l2)\n\n    l4 = l2.copy()\n    l4.pop()\n    print(l4)\n    print(l2)\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"errors\"\n\t\"fmt\"\n\t\"reflect\"\n\t\"sort\"\n)\n\nfunc main() {\n\tl1 := []int{1}\n\tl2 := []string{\"hello\", \"how\", \"are\", \"you?\"}\n\tl3 := []float64{6.2, 1.6, 1.2, 20.1}\n\tl1 = append(l1, 2)\n\tfmt.Println(l1)\n\tl1 = append(l1, []int{4, 5}...)\n\tfmt.Println(l1)\n\tl1 = append(l1, 3)\n\tcopy(l1[3+1:], l1[3:])\n\tl1[3] = 3\n\tfmt.Println(l1)\n\tfmt.Println(func() int {\n\t\tfor i, val := range l1 {\n\t\t\tif val == 2 {\n\t\t\t\treturn i\n\t\t\t}\n\t\t}\n\t\tpanic(errors.New(\"ValueError: element not found\"))\n\t}())\n\tfmt.Println(func() int {\n\t\tn := 0\n\t\tfor _, v := range l1 {\n\t\t\tif v == 3 {\n\t\t\t\tn += 1\n\t\t\t}\n\t\t}\n\t\treturn n\n\t}())\n\tfunc(s *[]int, x int) {\n\t\tfor i, val := range *s {\n\t\t\tif reflect.DeepEqual(val, x) {\n\t\t\t\t*s = append((*s)[:i], (*s)[i+1:]...)\n\t\t\t\treturn\n\t\t\t}\n\t\t}\n\t\tpanic(errors.New(\"ValueError: element not found\"))\n\t}(\u0026l1, 3)\n\tfmt.Println(l1)\n\tfor len(l1) != 0 {\n\t\tfmt.Println(func(s *[]int) int {\n\t\t\ti := len(*s) - 1\n\t\t\tpopped := (*s)[i]\n\t\t\t*s = (*s)[:i]\n\t\t\treturn popped\n\t\t}(\u0026l1))\n\t}\n\tl3 = nil\n\tfmt.Println(l3)\n\tsort.Ints(l1)\n\tfmt.Println(l1)\n\tsort.Strings(l2)\n\tfmt.Println(l2)\n\tsort.Float64s(l3)\n\tfmt.Println(l3)\n\tsort.Sort(sort.Reverse(sort.Float64Slice(l3)))\n\tfmt.Println(l3)\n\tfunc(arr []string) {\n\t\tfor i, j := 0, len(arr)-1; i \u003c j; i, j = i+1, j-1 {\n\t\t\tarr[i], arr[j] = arr[j], arr[i]\n\t\t}\n\t}(l2)\n\tfmt.Println(l2)\n\tl4 := func(s *[]string) (tmp []string) {\n\t\ttmp = append(tmp, *s...)\n\t\treturn\n\t}(\u0026l2)\n\tfunc(s *[]string) string {\n\t\ti := len(*s) - 1\n\t\tpopped := (*s)[i]\n\t\t*s = (*s)[:i]\n\t\treturn popped\n\t}(\u0026l4)\n\tfmt.Println(l4)\n\tfmt.Println(l2)\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### set_methods\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    a = {1, 2, 3, 4}\n    b = {4, 5, 6}\n    b.add(7)\n    print(a.union(b))\n    print(a.intersection(b))\n    print(a.difference(b))\n    print(a.symmetric_difference(b))\n\n    print(a.issubset(b))\n    print(a.issuperset(b))\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\ta := map[int]struct{}{1: {}, 2: {}, 3: {}, 4: {}}\n\tb := map[int]struct{}{4: {}, 5: {}, 6: {}}\n\tb[7] = struct{}{}\n\tfmt.Println(func(s1 map[int]struct{}, s2 map[int]struct{}) map[interface{}]struct{} {\n\t\tunion := map[interface{}]struct{}{}\n\t\tfor elt := range s1 {\n\t\t\tunion[elt] = struct{}{}\n\t\t}\n\t\tfor elt := range s2 {\n\t\t\tunion[elt] = struct{}{}\n\t\t}\n\t\treturn union\n\t}(a, b))\n\tfmt.Println(func(s1 map[int]struct{}, s2 map[int]struct{}) map[interface{}]struct{} {\n\t\tintersection := map[interface{}]struct{}{}\n\t\tfor elt := range s1 {\n\t\t\tif func() bool {\n\t\t\t\t_, ok := s2[elt]\n\t\t\t\treturn ok\n\t\t\t}() {\n\t\t\t\tintersection[elt] = struct{}{}\n\t\t\t}\n\t\t}\n\t\treturn intersection\n\t}(a, b))\n\tfmt.Println(func(s1 map[int]struct{}, s2 map[int]struct{}) map[interface{}]struct{} {\n\t\tdifference := map[interface{}]struct{}{}\n\t\tfor elt := range s1 {\n\t\t\tif !func() bool {\n\t\t\t\t_, ok := s2[elt]\n\t\t\t\treturn ok\n\t\t\t}() {\n\t\t\t\tdifference[elt] = struct{}{}\n\t\t\t}\n\t\t}\n\t\treturn difference\n\t}(a, b))\n\tfmt.Println(func(s1 map[int]struct{}, s2 map[int]struct{}) map[interface{}]struct{} {\n\t\tsymmetric_difference := map[interface{}]struct{}{}\n\t\tfor elt := range s1 {\n\t\t\tif !func() bool {\n\t\t\t\t_, ok := s2[elt]\n\t\t\t\treturn ok\n\t\t\t}() {\n\t\t\t\tsymmetric_difference[elt] = struct{}{}\n\t\t\t}\n\t\t}\n\t\tfor elt := range s2 {\n\t\t\tif !func() bool {\n\t\t\t\t_, ok := s1[elt]\n\t\t\t\treturn ok\n\t\t\t}() {\n\t\t\t\tsymmetric_difference[elt] = struct{}{}\n\t\t\t}\n\t\t}\n\t\treturn symmetric_difference\n\t}(a, b))\n\tfmt.Println(func(s1 map[int]struct{}, s2 map[int]struct{}) bool {\n\t\tfor elt := range s1 {\n\t\t\tif !func() bool {\n\t\t\t\t_, ok := s2[elt]\n\t\t\t\treturn ok\n\t\t\t}() {\n\t\t\t\treturn false\n\t\t\t}\n\t\t}\n\t\treturn true\n\t}(a, b))\n\tfmt.Println(func(s1 map[int]struct{}, s2 map[int]struct{}) bool {\n\t\tfor elt := range s2 {\n\t\t\tif !func() bool {\n\t\t\t\t_, ok := s1[elt]\n\t\t\t\treturn ok\n\t\t\t}() {\n\t\t\t\treturn false\n\t\t\t}\n\t\t}\n\t\treturn true\n\t}(a, b))\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### global_code\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\nA = [1, 2, 3]\n\nfor i, x in enumerate(A):\n    A[i] += x\n\nB = A[0]\nC = A[0]\nD: int = 3\n\nwhile C \u003c A[2]:\n    C += 1\n\nif C == A[2]:\n    print('True')\n\n\ndef main():\n    print(\"Main started\")\n    print(A)\n    print(B)\n    print(C)\n    print(D)\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nvar (\n\tA = []int{1, 2, 3}\n\tB int\n\tC int\n\tD int\n)\n\nfunc init() {\n\tfor i, x := range A {\n\t\tA[i] += x\n\t}\n\tB = A[0]\n\tC = A[0]\n\tD = 3\n\tfor C \u003c A[2] {\n\t\tC += 1\n\t}\n\tif C == A[2] {\n\t\tfmt.Println(\"True\")\n\t}\n}\n\nfunc main() {\n\tfmt.Println(\"Main started\")\n\tfmt.Println(A)\n\tfmt.Println(B)\n\tfmt.Println(C)\n\tfmt.Println(D)\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### boolnumcompare\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    print(1 == True)\n    print(1 == False)\n    print(0 == True)\n    print(0 == False)\n    print()\n    print(1. == True)\n    print(1. == False)\n    print(0. == True)\n    print(0. == False)\n    print()\n    print(1+0j == True)\n    print(1+0j == False)\n    print(0+0j == True)\n    print(0+0j == False)\n    print()\n    print(2 == True)\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\tfmt.Println(1 == 1)\n\tfmt.Println(1 == 0)\n\tfmt.Println(0 == 1)\n\tfmt.Println(0 == 0)\n\tfmt.Println()\n\tfmt.Println(1.0 == 1)\n\tfmt.Println(1.0 == 0)\n\tfmt.Println(0.0 == 1)\n\tfmt.Println(0.0 == 0)\n\tfmt.Println()\n\tfmt.Println(1+0.0i == 1)\n\tfmt.Println(1+0.0i == 0)\n\tfmt.Println(0+0.0i == 1)\n\tfmt.Println(0+0.0i == 0)\n\tfmt.Println()\n\tfmt.Println(2 == 1)\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### add\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    print(add(2, 2))\n\n\ndef add(a: int, b: int) -\u003e int:\n    return a + b\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\tfmt.Println(add(2, 2))\n}\n\nfunc add(a int, b int) int {\n\treturn a + b\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### exponents\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    print(2 ** 8)\n    x = [2, 4]\n    print(x[0] ** x[1])\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\t\"math\"\n)\n\nfunc main() {\n\tfmt.Println(math.Pow(2, 8))\n\tx := []int{2, 4}\n\tfmt.Println(math.Pow(float64(x[0]), float64(x[1])))\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### variables\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    a = 3\n    b = 7\n    a = a + b\n    print(a + b)\n    another_scope()\n\n\ndef another_scope():\n    a = 1\n    b = 12\n    a = a + b\n    print(a + b)\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\ta := 3\n\tb := 7\n\ta = a + b\n\tfmt.Println(a + b)\n\tanother_scope()\n}\n\nfunc another_scope() {\n\ta := 1\n\tb := 12\n\ta = a + b\n\tfmt.Println(a + b)\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### floats\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    a = 7\n    b = 3\n    c = 4.5\n    print(a / b)\n    print(a // b)\n    print(a / c)\n    print(a // c)\n    print(a + b)\n    print(a + c)\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\t\"math\"\n)\n\nfunc main() {\n\ta := 7\n\tb := 3\n\tc := 4.5\n\tfmt.Println(float64(a) / float64(b))\n\tfmt.Println(a / b)\n\tfmt.Println(float64(a) / c)\n\tfmt.Println(math.Floor(float64(a) / c))\n\tfmt.Println(a + b)\n\tfmt.Println(float64(a) + c)\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### numlist\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    a = [1, 2, 3]\n    print(a[0])\n    print(a[1])\n    print(a[2])\n    a.append(4)\n    print(a[3])\n    a += [5, 6, 7]\n    a = a + [8, 9, 10]\n    print(a[4])\n    print(a[-1])\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\ta := []int{1, 2, 3}\n\tfmt.Println(a[0])\n\tfmt.Println(a[1])\n\tfmt.Println(a[2])\n\ta = append(a, 4)\n\tfmt.Println(a[3])\n\ta = append(a, []int{5, 6, 7}...)\n\ta = append(a, []int{8, 9, 10}...)\n\tfmt.Println(a[4])\n\tfmt.Println(a[len(a)-1])\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### loops\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    a = [1, 2, 3]\n    for v in a:\n        print(v)\n\n    for i, v in enumerate(a):\n        print(i + v)\n\n    for i in range(5):\n        print(i)\n\n    for i in range(10, 15):\n        print(i)\n\n    for i in range(10, 15, 2):\n        print(i)\n\n    for j in range(15, 10, -1):\n        print(j)\n\n    for j in range(15, 10, -2):\n        print(j)\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\ta := []int{1, 2, 3}\n\tfor _, v := range a {\n\t\tfmt.Println(v)\n\t}\n\tfor i, v := range a {\n\t\tfmt.Println(i + v)\n\t}\n\tfor i := 0; i \u003c 5; i++ {\n\t\tfmt.Println(i)\n\t}\n\tfor i := 10; i \u003c 15; i++ {\n\t\tfmt.Println(i)\n\t}\n\tfor i := 10; i \u003c 15; i += 2 {\n\t\tfmt.Println(i)\n\t}\n\tfor j := 15; j \u003e 10; j-- {\n\t\tfmt.Println(j)\n\t}\n\tfor j := 15; j \u003e 10; j -= 2 {\n\t\tfmt.Println(j)\n\t}\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### strings\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    a = \"hello\"\n    b = \"world\"\n    c = a + \" \" + b\n    print(c)\n    print(double_it(c))\n    print(c[1])\n    print(c[1:6])\n\n\ndef double_it(c: str) -\u003e str:\n    return c + c\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\ta := \"hello\"\n\tb := \"world\"\n\tc := a + \" \" + b\n\tfmt.Println(c)\n\tfmt.Println(double_it(c))\n\tfmt.Println(string(c[1]))\n\tfmt.Println(c[1:6])\n}\n\nfunc double_it(c string) string {\n\treturn c + c\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### logical\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    a = True\n    b = False\n    print(a)\n    print(b)\n    print(a and b)\n    print(a or b)\n    print(not a)\n    print(not b)\n    print(a and not b)\n    print(a or not b)\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\ta := true\n\tb := false\n\tfmt.Println(a)\n\tfmt.Println(b)\n\tfmt.Println(a \u0026\u0026 b)\n\tfmt.Println(a || b)\n\tfmt.Println(!a)\n\tfmt.Println(!b)\n\tfmt.Println(a \u0026\u0026 !b)\n\tfmt.Println(a || !b)\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### maths\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\nimport math\n\ndef main():\n    print(math.sin(3))\n    print(math.cosh(3))\n    print(math.pi)\n    print(math.acosh(6))\n    print(math.atan2(4, 7))\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\t\"math\"\n)\n\nfunc main() {\n\tfmt.Println(math.Sin(3))\n\tfmt.Println(math.Cosh(3))\n\tfmt.Println(math.Pi)\n\tfmt.Println(math.Acosh(6))\n\tfmt.Println(math.Atan2(4, 7))\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### requestslib\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\nimport requests\n\n\ndef main():\n    resp = requests.get(\"http://tour.golang.org/welcome/1\")\n    print(resp.text)\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"net/http\"\n)\n\nfunc main() {\n\tresp, err := http.Get(\"http://tour.golang.org/welcome/1\")\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\tdefer resp.Body.Close()\n\tfmt.Println(func() string {\n\t\tbody, err := ioutil.ReadAll(resp.Body)\n\t\tif err != nil {\n\t\t\tpanic(err)\n\t\t}\n\t\treturn string(body)\n\t}())\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### conditionals\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    a = 7\n    b = add(a, -2)\n    if a \u003e b:\n        print(\"It's bigger\")\n    elif a == b:\n        print(\"They're equal\")\n    else:\n        print(\"It's smaller\")\n\n\ndef add(a: int, b: int) -\u003e int:\n    return a + b\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\ta := 7\n\tb := add(a, -2)\n\tif a \u003e b {\n\t\tfmt.Println(\"It's bigger\")\n\t} else if a == b {\n\t\tfmt.Println(\"They're equal\")\n\t} else {\n\t\tfmt.Println(\"It's smaller\")\n\t}\n}\n\nfunc add(a int, b int) int {\n\treturn a + b\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### fstrings\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    name = \"Michael\"\n    age = 24\n    print(f\"My name is {name} and I am {age} years old. Later this year I'll be {age + 1}!\")\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"bytes\"\n\t\"fmt\"\n\t\"text/template\"\n)\n\nfunc main() {\n\tname := \"Michael\"\n\tage := 24\n\tfmt.Println(func() string {\n\t\tvar buf bytes.Buffer\n\t\terr := template.Must(template.New(\"f\").Parse(\"My name is {{.name}} and I am {{.age}} years old. Later this year I'll be {{.expr1}}!\")).\n\t\t\tExecute(\u0026buf, map[string]interface{}{\"name\": name, \"age\": age, \"expr1\": age + 1})\n\t\tif err != nil {\n\t\t\tpanic(err)\n\t\t}\n\t\treturn buf.String()\n\t}())\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### nestedfstrings\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    name = \"Michael\"\n    age = 24\n    print(f\"My name is {name} and I am {age} years old. Later this year I'll be {f'{age + 1}'}!\")\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"bytes\"\n\t\"fmt\"\n\t\"text/template\"\n)\n\nfunc main() {\n\tname := \"Michael\"\n\tage := 24\n\tfmt.Println(func() string {\n\t\tvar buf bytes.Buffer\n\t\terr := template.Must(template.New(\"f\").Parse(\"My name is {{.name}} and I am {{.age}} years old. Later this year I'll be {{.expr1}}!\")).\n\t\t\tExecute(\u0026buf, map[string]interface{}{\"name\": name, \"age\": age, \"expr1\": func() string {\n\t\t\t\tvar buf bytes.Buffer\n\t\t\t\terr := template.Must(template.New(\"f\").Parse(\"{{.expr1}}\")).\n\t\t\t\t\tExecute(\u0026buf, map[string]interface{}{\"expr1\": age + 1})\n\t\t\t\tif err != nil {\n\t\t\t\t\tpanic(err)\n\t\t\t\t}\n\t\t\t\treturn buf.String()\n\t\t\t}()})\n\t\tif err != nil {\n\t\t\tpanic(err)\n\t\t}\n\t\treturn buf.String()\n\t}())\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### dictionary\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    a = {\"name\": \"Michael\", \"age\": 24, 1337: True}\n    print(a)\n    a[\"sleepiness\"] = 1.0\n    del a[1337]\n\n    for k, v in a.items():\n        print(k)\n        print(v)\n\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\ta := map[interface{}]interface{}{\"name\": \"Michael\", \"age\": 24, 1337: true}\n\tfmt.Println(a)\n\ta[\"sleepiness\"] = 1.0\n\tdelete(a, 1337)\n\tfor k, v := range a {\n\t\tfmt.Println(k)\n\t\tfmt.Println(v)\n\t}\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### writefile\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    with open(\"file_1.tmp\", \"w+\") as f:\n        f.write(\"This file was created in w+ mode\\n\")\n\n    with open(\"file_2.tmp\", \"x\") as f:\n        f.write(\"This file was created by x mode\\n\")\n\n    with open(\"file_2.tmp\", \"w\") as f:\n        f.write(\"This file was created by x mode and then overwritten in w mode\\n\")\n\n    with open(\"file_2.tmp\", \"a\") as f:\n        f.write(\"... And then appended to in a mode\\n\")\n\n    with open(\"file_2.tmp\", \"r\") as f:\n        print(f.read())\n\n    with open(\"file_3.tmp\", \"a+\") as f:\n        f.write(\"This file was created in a+ mode\\n\")\n\n    with open(\"file_4.tmp\", \"x+\") as f:\n        f.write(\"This file was created by x+ mode\\n\")\n\n    with open(\"file_5.tmp\", \"wb+\") as f:\n        f.write(b\"This file was created in wb+ mode\\n\")\n\n    with open(\"file_6.tmp\", \"xb\") as f:\n        f.write(b\"This file was created by xb mode\\n\")\n\n    with open(\"file_6.tmp\", \"wb\") as f:\n        f.write(b\"This file was created by xb mode and then overwritten in wb mode\\n\")\n\n    with open(\"file_6.tmp\", \"ab\") as f:\n        f.write(b\"... And then appended to in ab mode\\n\")\n\n    with open(\"file_6.tmp\", \"rb\") as f:\n        print(f.read().decode())\n\n    with open(\"file_7.tmp\", \"ab+\") as f:\n        f.write(b\"This file was created in ab+ mode\\n\")\n\n    with open(\"file_8.tmp\", \"xb+\") as f:\n        f.write(b\"This file was created by xb+ mode\\n\")\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"os\"\n)\n\nfunc main() {\n\tfunc() {\n\t\tf := func() *os.File {\n\t\t\tf, err := os.OpenFile(\"file_1.tmp\", os.O_RDWR|os.O_TRUNC|os.O_CREATE, 0o777)\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn f\n\t\t}()\n\t\tdefer func() {\n\t\t\tif err := f.Close(); err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t}()\n\t\tfunc() int {\n\t\t\tn, err := f.WriteString(\"This file was created in w+ mode\\n\")\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn n\n\t\t}()\n\t}()\n\tfunc() {\n\t\tf := func() *os.File {\n\t\t\tf, err := os.OpenFile(\"file_2.tmp\", os.O_WRONLY|os.O_EXCL|os.O_CREATE, 0o777)\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn f\n\t\t}()\n\t\tdefer func() {\n\t\t\tif err := f.Close(); err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t}()\n\t\tfunc() int {\n\t\t\tn, err := f.WriteString(\"This file was created by x mode\\n\")\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn n\n\t\t}()\n\t}()\n\tfunc() {\n\t\tf := func() *os.File {\n\t\t\tf, err := os.OpenFile(\"file_2.tmp\", os.O_WRONLY|os.O_TRUNC, 0o777)\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn f\n\t\t}()\n\t\tdefer func() {\n\t\t\tif err := f.Close(); err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t}()\n\t\tfunc() int {\n\t\t\tn, err := f.WriteString(\n\t\t\t\t\"This file was created by x mode and then overwritten in w mode\\n\",\n\t\t\t)\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn n\n\t\t}()\n\t}()\n\tfunc() {\n\t\tf := func() *os.File {\n\t\t\tf, err := os.OpenFile(\"file_2.tmp\", os.O_WRONLY|os.O_APPEND|os.O_CREATE, 0o777)\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn f\n\t\t}()\n\t\tdefer func() {\n\t\t\tif err := f.Close(); err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t}()\n\t\tfunc() int {\n\t\t\tn, err := f.WriteString(\"... And then appended to in a mode\\n\")\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn n\n\t\t}()\n\t}()\n\tfunc() {\n\t\tf := func() *os.File {\n\t\t\tf, err := os.OpenFile(\"file_2.tmp\", os.O_RDONLY, 0o777)\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn f\n\t\t}()\n\t\tdefer func() {\n\t\t\tif err := f.Close(); err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t}()\n\t\tfmt.Println(func() string {\n\t\t\tcontent, err := ioutil.ReadAll(f)\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn string(content)\n\t\t}())\n\t}()\n\tfunc() {\n\t\tf := func() *os.File {\n\t\t\tf, err := os.OpenFile(\"file_3.tmp\", os.O_RDWR|os.O_APPEND|os.O_CREATE, 0o777)\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn f\n\t\t}()\n\t\tdefer func() {\n\t\t\tif err := f.Close(); err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t}()\n\t\tfunc() int {\n\t\t\tn, err := f.WriteString(\"This file was created in a+ mode\\n\")\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn n\n\t\t}()\n\t}()\n\tfunc() {\n\t\tf := func() *os.File {\n\t\t\tf, err := os.OpenFile(\"file_4.tmp\", os.O_RDWR|os.O_EXCL|os.O_CREATE, 0o777)\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn f\n\t\t}()\n\t\tdefer func() {\n\t\t\tif err := f.Close(); err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t}()\n\t\tfunc() int {\n\t\t\tn, err := f.WriteString(\"This file was created by x+ mode\\n\")\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn n\n\t\t}()\n\t}()\n\tfunc() {\n\t\tf := func() *os.File {\n\t\t\tf, err := os.OpenFile(\"file_5.tmp\", os.O_RDWR|os.O_TRUNC|os.O_CREATE, 0o777)\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn f\n\t\t}()\n\t\tdefer func() {\n\t\t\tif err := f.Close(); err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t}()\n\t\tfunc() int {\n\t\t\tn, err := f.Write([]byte(\"This file was created in wb+ mode\\n\"))\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn n\n\t\t}()\n\t}()\n\tfunc() {\n\t\tf := func() *os.File {\n\t\t\tf, err := os.OpenFile(\"file_6.tmp\", os.O_WRONLY|os.O_EXCL|os.O_CREATE, 0o777)\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn f\n\t\t}()\n\t\tdefer func() {\n\t\t\tif err := f.Close(); err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t}()\n\t\tfunc() int {\n\t\t\tn, err := f.Write([]byte(\"This file was created by xb mode\\n\"))\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn n\n\t\t}()\n\t}()\n\tfunc() {\n\t\tf := func() *os.File {\n\t\t\tf, err := os.OpenFile(\"file_6.tmp\", os.O_WRONLY|os.O_TRUNC, 0o777)\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn f\n\t\t}()\n\t\tdefer func() {\n\t\t\tif err := f.Close(); err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t}()\n\t\tfunc() int {\n\t\t\tn, err := f.Write(\n\t\t\t\t[]byte(\"This file was created by xb mode and then overwritten in wb mode\\n\"),\n\t\t\t)\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn n\n\t\t}()\n\t}()\n\tfunc() {\n\t\tf := func() *os.File {\n\t\t\tf, err := os.OpenFile(\"file_6.tmp\", os.O_WRONLY|os.O_APPEND|os.O_CREATE, 0o777)\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn f\n\t\t}()\n\t\tdefer func() {\n\t\t\tif err := f.Close(); err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t}()\n\t\tfunc() int {\n\t\t\tn, err := f.Write([]byte(\"... And then appended to in ab mode\\n\"))\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn n\n\t\t}()\n\t}()\n\tfunc() {\n\t\tf := func() *os.File {\n\t\t\tf, err := os.OpenFile(\"file_6.tmp\", os.O_RDONLY, 0o777)\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn f\n\t\t}()\n\t\tdefer func() {\n\t\t\tif err := f.Close(); err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t}()\n\t\tfmt.Println(string(func() []byte {\n\t\t\tcontent, err := ioutil.ReadAll(f)\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn content\n\t\t}()))\n\t}()\n\tfunc() {\n\t\tf := func() *os.File {\n\t\t\tf, err := os.OpenFile(\"file_7.tmp\", os.O_RDWR|os.O_APPEND|os.O_CREATE, 0o777)\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn f\n\t\t}()\n\t\tdefer func() {\n\t\t\tif err := f.Close(); err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t}()\n\t\tfunc() int {\n\t\t\tn, err := f.Write([]byte(\"This file was created in ab+ mode\\n\"))\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn n\n\t\t}()\n\t}()\n\tfunc() {\n\t\tf := func() *os.File {\n\t\t\tf, err := os.OpenFile(\"file_8.tmp\", os.O_RDWR|os.O_EXCL|os.O_CREATE, 0o777)\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn f\n\t\t}()\n\t\tdefer func() {\n\t\t\tif err := f.Close(); err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t}()\n\t\tfunc() int {\n\t\t\tn, err := f.Write([]byte(\"This file was created by xb+ mode\\n\"))\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn n\n\t\t}()\n\t}()\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### pass\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    pass\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nfunc main() {\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### ellipsis\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    ...\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nfunc main() {\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### missingreturntype\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    print(add(1, 3))\n\n\ndef add(a: int, b: int):\n    return a + b\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\tfmt.Println(add(1, 3))\n}\n\nfunc add(a int, b int) int {\n\treturn a + b\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### continuestmt\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    for i in range(10):\n        if i \u003c 3 or i \u003e 7:\n            continue\n        print(i)\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\tfor i := 0; i \u003c 10; i++ {\n\t\tif i \u003c 3 || i \u003e 7 {\n\t\t\tcontinue\n\t\t}\n\t\tfmt.Println(i)\n\t}\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### breakstmt\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    for i in range(10):\n        if i \u003e 7:\n            break\n        print(i)\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\tfor i := 0; i \u003c 10; i++ {\n\t\tif i \u003e 7 {\n\t\t\tbreak\n\t\t}\n\t\tfmt.Println(i)\n\t}\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### whileloop\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    i = 0\n    while True:\n        print(i)\n        i += 1\n        if i \u003e 5:\n            break\n\n    j = 10\n    while j \u003c 100:\n        print(j)\n        j += 10\n\n    while 1:\n        print(j + i)\n        break\n\n    while 0.1:\n        print(j + i)\n        break\n\n    while 0:\n        print(\"This never executes\")\n\n    while 0.0:\n        print(\"This never executes\")\n\n    while None:\n        print(\"This never executes\")\n\n    while False:\n        print(\"This never executes\")\n\n    while \"\":\n        print(\"This never executes\")\n\n    while \"hi\":\n        print(\"This executes\")\n        break\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\ti := 0\n\tfor {\n\t\tfmt.Println(i)\n\t\ti += 1\n\t\tif i \u003e 5 {\n\t\t\tbreak\n\t\t}\n\t}\n\tj := 10\n\tfor j \u003c 100 {\n\t\tfmt.Println(j)\n\t\tj += 10\n\t}\n\tfor {\n\t\tfmt.Println(j + i)\n\t\tbreak\n\t}\n\tfor {\n\t\tfmt.Println(j + i)\n\t\tbreak\n\t}\n\tfor false {\n\t\tfmt.Println(\"This never executes\")\n\t}\n\tfor false {\n\t\tfmt.Println(\"This never executes\")\n\t}\n\tfor false {\n\t\tfmt.Println(\"This never executes\")\n\t}\n\tfor false {\n\t\tfmt.Println(\"This never executes\")\n\t}\n\tfor false {\n\t\tfmt.Println(\"This never executes\")\n\t}\n\tfor {\n\t\tfmt.Println(\"This executes\")\n\t\tbreak\n\t}\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### sets\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    s = {1, 2, 3}\n    x = 1\n\n    print(len(s))\n\n    print(x in s)\n\n    print(x not in s)\n\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\ts := map[int]struct{}{1: {}, 2: {}, 3: {}}\n\tx := 1\n\tfmt.Println(len(s))\n\tfmt.Println(func() bool {\n\t\t_, ok := s[x]\n\t\treturn ok\n\t}())\n\tfmt.Println(!func() bool {\n\t\t_, ok := s[x]\n\t\treturn ok\n\t}())\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### contains\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    a = [1, 2, 3]\n    print(1 in a)\n    print(4 in a)\n    print(5 not in a)\n\n    b = \"hello world\"\n    print(\"hello\" in b)\n    print(\"Hello\" not in b)\n\n    c = {\"hello\": 1, \"world\": 2}\n    print(\"hello\" in c)\n    print(\"Hello\" not in c)\n\n    d = b'hello world'\n    print(b'hello' in d)\n    print(b'Hello' not in d)\n\n    e = {1, 2, 3, \"hello\"}\n    print(\"hello\" in e)\n    print(4 not in e)\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"bytes\"\n\t\"fmt\"\n\t\"strings\"\n)\n\nfunc main() {\n\ta := []int{1, 2, 3}\n\tfmt.Println(func() int {\n\t\tfor i, v := range a {\n\t\t\tif v == 1 {\n\t\t\t\treturn i\n\t\t\t}\n\t\t}\n\t\treturn -1\n\t}() != -1)\n\tfmt.Println(func() int {\n\t\tfor i, v := range a {\n\t\t\tif v == 4 {\n\t\t\t\treturn i\n\t\t\t}\n\t\t}\n\t\treturn -1\n\t}() != -1)\n\tfmt.Println(func() int {\n\t\tfor i, v := range a {\n\t\t\tif v == 5 {\n\t\t\t\treturn i\n\t\t\t}\n\t\t}\n\t\treturn -1\n\t}() == -1)\n\tb := \"hello world\"\n\tfmt.Println(strings.Contains(b, \"hello\"))\n\tfmt.Println(!strings.Contains(b, \"Hello\"))\n\tc := map[string]int{\"hello\": 1, \"world\": 2}\n\tfmt.Println(func() bool {\n\t\t_, ok := c[\"hello\"]\n\t\treturn ok\n\t}())\n\tfmt.Println(!func() bool {\n\t\t_, ok := c[\"Hello\"]\n\t\treturn ok\n\t}())\n\td := []byte(\"hello world\")\n\tfmt.Println(bytes.Contains(d, []byte(\"hello\")))\n\tfmt.Println(!bytes.Contains(d, []byte(\"Hello\")))\n\te := map[interface{}]struct{}{1: {}, 2: {}, 3: {}, \"hello\": {}}\n\tfmt.Println(func() bool {\n\t\t_, ok := e[\"hello\"]\n\t\treturn ok\n\t}())\n\tfmt.Println(!func() bool {\n\t\t_, ok := e[4]\n\t\treturn ok\n\t}())\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### tryexcept\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    a = [1, 2, 3]\n    for index in range(4):\n        try:\n            print(a[index])\n            if index == 1:\n                raise ValueError(index)\n        except IndexError:\n            print(\"That index was out of bounds\")\n        except (NotImplementedError, RuntimeError):\n            print(\"This won't actually happen...\")\n        except Exception as e:\n            print(\"Some other exception occurred\")\n            print(e)\n\n\nif __name__ == '__main__':\n    main()\n\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\t\"strings\"\n)\n\nfunc main() {\n\ta := []int{1, 2, 3}\n\tfor index := 0; index \u003c 4; index++ {\n\t\tfunc() {\n\t\t\tdefer func() {\n\t\t\t\tif r := recover(); r != nil {\n\t\t\t\t\tif err, ok := r.(error); ok {\n\t\t\t\t\t\tif strings.HasPrefix(err.Error(), \"IndexError\") ||\n\t\t\t\t\t\t\tstrings.HasPrefix(err.Error(), \"runtime error: index out of range\") {\n\t\t\t\t\t\t\tfmt.Println(\"That index was out of bounds\")\n\t\t\t\t\t\t\treturn\n\t\t\t\t\t\t} else if strings.HasPrefix(err.Error(), \"NotImplementedError\") || (strings.HasPrefix(err.Error(), \"RuntimeError\") || strings.HasPrefix(err.Error(), \"runtime error\")) {\n\t\t\t\t\t\t\tfmt.Println(\"This won't actually happen...\")\n\t\t\t\t\t\t\treturn\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\te := err\n\t\t\t\t\t\t\tfmt.Println(\"Some other exception occurred\")\n\t\t\t\t\t\t\tfmt.Println(e)\n\t\t\t\t\t\t\treturn\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tpanic(r)\n\t\t\t\t}\n\t\t\t}()\n\t\t\tfmt.Println(a[index])\n\t\t\tif index == 1 {\n\t\t\t\tpanic(fmt.Errorf(\"ValueError: %v\", index))\n\t\t\t}\n\t\t}()\n\t}\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### tryfinally\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    a = [1, 2, 3]\n\n    for index in range(4):\n        try:\n            print(a[index])\n        except Exception:\n            pass\n        finally:\n            print(\"Finished an iteration\")\n\n    for index in range(4):\n        try:\n            print(a[index])\n        finally:\n            print(\"Finished an iteration\")\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\ta := []int{1, 2, 3}\n\tfor index := 0; index \u003c 4; index++ {\n\t\tfunc() {\n\t\t\tdefer func() {\n\t\t\t\tfmt.Println(\"Finished an iteration\")\n\t\t\t}()\n\t\t\tdefer func() {\n\t\t\t\tif r := recover(); r != nil {\n\t\t\t\t\tif _, ok := r.(error); ok {\n\t\t\t\t\t\treturn\n\t\t\t\t\t}\n\t\t\t\t\tpanic(r)\n\t\t\t\t}\n\t\t\t}()\n\t\t\tfmt.Println(a[index])\n\t\t}()\n\t}\n\tfor index := 0; index \u003c 4; index++ {\n\t\tfunc() {\n\t\t\tdefer func() {\n\t\t\t\tfmt.Println(\"Finished an iteration\")\n\t\t\t}()\n\t\t\tfmt.Println(a[index])\n\t\t}()\n\t}\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### asserts\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    assert 1 + 1 == 2\n    assert True\n    assert 1 + 3 == 5, \"Math must be broken\"\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"errors\"\n\t\"fmt\"\n)\n\nfunc main() {\n\tif !(1+1 == 2) {\n\t\tpanic(errors.New(\"AssertionError\"))\n\t}\n\tif !true {\n\t\tpanic(errors.New(\"AssertionError\"))\n\t}\n\tif !(1+3 == 5) {\n\t\tpanic(fmt.Errorf(\"AssertionError: %v\", \"Math must be broken\"))\n\t}\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### classes\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\nclass Welcome:\n    greeting: str\n    instructions: list[str]\n\n    def __init__(self, greeting: str, instructions: list[str]) -\u003e None:\n        self.greeting = greeting\n        self.instructions = instructions\n\n    def greet(self):\n        print(self.greeting)\n        for instruction in self.instructions:\n            print(instruction)\n\n\ndef main():\n    welcome = Welcome(\"Hello World\", [\n        \"This is a class!\",\n        \"Support will be limited at first.\",\n        \"Still, I hope you'll find them useful.\"\n    ])\n    welcome.greet()\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\ntype Welcome struct {\n\tgreeting     string\n\tinstructions []string\n}\n\nfunc NewWelcome(greeting string, instructions []string) (self *Welcome) {\n\tself = new(Welcome)\n\tself.greeting = greeting\n\tself.instructions = instructions\n\treturn\n}\n\nfunc (self *Welcome) greet() {\n\tfmt.Println(self.greeting)\n\tfor _, instruction := range self.instructions {\n\t\tfmt.Println(instruction)\n\t}\n}\n\nfunc main() {\n\twelcome := NewWelcome(\n\t\t\"Hello World\",\n\t\t[]string{\n\t\t\t\"This is a class!\",\n\t\t\t\"Support will be limited at first.\",\n\t\t\t\"Still, I hope you'll find them useful.\",\n\t\t},\n\t)\n\twelcome.greet()\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### globals\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\nSITE = \"https://www.google.com/\"\nNAME = [\"Michael\", \"Wayne\", \"Phelps\"]\nKEYS = {1: 2, 3: 4}\nAGE = 1000\nBIRTH_YEAR = 2050\n\n\ndef main():\n    global AGE\n    print(SITE)\n    print(NAME)\n    print(BIRTH_YEAR)\n    print(KEYS)\n    print(AGE)\n    AGE = 20  # This should use the variable from the global scope\n    other_1()\n    print(AGE)\n    other_2()\n\n\ndef other_1():\n    AGE = 200  # This should declare a new variable age\n    print(AGE)\n\ndef other_2():\n    print(AGE)  # This should still be able to access the global\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nvar (\n\tSITE       = \"https://www.google.com/\"\n\tNAME       = []string{\"Michael\", \"Wayne\", \"Phelps\"}\n\tKEYS       = map[int]int{1: 2, 3: 4}\n\tAGE        = 1000\n\tBIRTH_YEAR = 2050\n)\n\nfunc main() {\n\tfmt.Println(SITE)\n\tfmt.Println(NAME)\n\tfmt.Println(BIRTH_YEAR)\n\tfmt.Println(KEYS)\n\tfmt.Println(AGE)\n\tAGE = 20\n\tother_1()\n\tfmt.Println(AGE)\n\tother_2()\n}\n\nfunc other_1() {\n\tAGE := 200\n\tfmt.Println(AGE)\n}\n\nfunc other_2() {\n\tfmt.Println(AGE)\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### asyncawait\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\nimport asyncio\n\n\nasync def myAsyncFunction() -\u003e int:\n    await asyncio.sleep(2)\n    return 2\n\n\nasync def main():\n    r = await myAsyncFunction()\n    print(r)\n\n\nif __name__ == '__main__':\n    asyncio.run(main())\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\t\"time\"\n)\n\nfunc myAsyncFunction() \u003c-chan int {\n\tr := make(chan int)\n\tgo func() {\n\t\tdefer close(r)\n\t\ttime.Sleep(time.Second * 2)\n\t\tr \u003c- 2\n\t}()\n\treturn r\n}\n\nfunc main() {\n\tr := \u003c-myAsyncFunction()\n\tfmt.Println(r)\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### yields\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    my_gen = gen()\n    for x in my_gen:\n        print(\"Received next number!\")\n        print(x)\n\n\ndef gen():\n    print(\"Yielding next number...\")\n    yield 1\n    print(\"Yielding next number...\")\n    yield 2\n    print(\"Yielding next number...\")\n    yield 3\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\tmy_gen := gen()\n\tfor x, ok := \u003c-my_gen(); ok; x, ok = \u003c-my_gen() {\n\t\tfmt.Println(\"Received next number!\")\n\t\tfmt.Println(x)\n\t}\n}\n\nfunc gen() func() \u003c-chan int {\n\twait := make(chan struct{})\n\tyield := make(chan int)\n\tgo func() {\n\t\tdefer close(yield)\n\t\t\u003c-wait\n\t\tfmt.Println(\"Yielding next number...\")\n\t\tyield \u003c- 1\n\t\t\u003c-wait\n\t\tfmt.Println(\"Yielding next number...\")\n\t\tyield \u003c- 2\n\t\t\u003c-wait\n\t\tfmt.Println(\"Yielding next number...\")\n\t\tyield \u003c- 3\n\t\t\u003c-wait\n\t}()\n\treturn func() \u003c-chan int {\n\t\twait \u003c- struct{}{}\n\t\treturn yield\n\t}\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### isvseql\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    a = [1, 2, 3]\n    b = [1, 2, 3]\n    print(a == b)  # True\n    print(a != b)  # False\n    print(a is a)  # True\n    print(a is b)  # False\n    print(a is not a)  # False\n    print(a is not b)  # True\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\t\"reflect\"\n)\n\nfunc main() {\n\ta := []int{1, 2, 3}\n\tb := []int{1, 2, 3}\n\tfmt.Println(reflect.DeepEqual(a, b))\n\tfmt.Println(!reflect.DeepEqual(a, b))\n\tfmt.Println(\u0026a == \u0026a)\n\tfmt.Println(\u0026a == \u0026b)\n\tfmt.Println(\u0026a != \u0026a)\n\tfmt.Println(\u0026a != \u0026b)\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### matchcase\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    a = 1\n    match a:\n        case 1:\n            print(1)\n        case 2:\n            print(2)\n        case 3:\n            print(3)\n\n    match a:\n        case 4:\n            print(\"Never gonna happen\")\n        case _:\n            print(\"Nice, defaults!\")\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\ta := 1\n\tswitch a {\n\tcase 1:\n\t\tfmt.Println(1)\n\tcase 2:\n\t\tfmt.Println(2)\n\tcase 3:\n\t\tfmt.Println(3)\n\t}\n\tswitch a {\n\tcase 4:\n\t\tfmt.Println(\"Never gonna happen\")\n\tdefault:\n\t\tfmt.Println(\"Nice, defaults!\")\n\t}\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### defaultargs\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    a = increment(1)\n    print(a)\n    b = increment(a, 2)\n    print(b)\n    c = increment(a, decrement=True, amount=3)\n    print(c)\n\n\ndef increment(n: int, amount: int = 1, decrement: bool = False) -\u003e int:\n    if decrement:\n        return n - amount\n    return n + amount\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\ta := increment(1, 1, false)\n\tfmt.Println(a)\n\tb := increment(a, 2, false)\n\tfmt.Println(b)\n\tc := increment(a, 3, true)\n\tfmt.Println(c)\n}\n\nfunc increment(n int, amount int, decrement bool) int {\n\tif decrement {\n\t\treturn n - amount\n\t}\n\treturn n + amount\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### walrus\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    if (a := some_func()) == 7:\n        print(a)\n\n    for x in (y := [1, 2, 3]):\n        print(y)\n        print(x)\n\n    match j := 5:\n        case 5:\n            print(j)\n\n    while (t1 := thing_1()) \u003c 5 and (t2 := thing_2()) == 3:\n        print(t1)\n        print(t2)\n\n\ndef some_func():\n    return 7\n\n\ncall_count = 0\n\n\ndef thing_1():\n    global call_count\n    call_count += 1\n    return call_count\n\n\ndef thing_2():\n    return 3\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\tif a := some_func(); a == 7 {\n\t\tfmt.Println(a)\n\t}\n\ty := []int{1, 2, 3}\n\tfor _, x := range y {\n\t\tfmt.Println(y)\n\t\tfmt.Println(x)\n\t}\n\tswitch j := 5; j {\n\tcase 5:\n\t\tfmt.Println(j)\n\t}\n\tfor t1, t2 := thing_1(), thing_2(); t1 \u003c 5 \u0026\u0026 t2 == 3; t1, t2 = thing_1(), thing_2() {\n\t\tfmt.Println(t1)\n\t\tfmt.Println(t2)\n\t}\n}\n\nfunc some_func() int {\n\treturn 7\n}\n\nvar call_count = 0\n\nfunc thing_1() int {\n\tcall_count += 1\n\treturn call_count\n}\n\nfunc thing_2() int {\n\treturn 3\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### truthiness\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    if a := 1:\n        print(a)\n\n    if c := \"\":\n        print(c)\n\n    if d := b\"\":\n        print(d)\n\n    if e := \"Hello\":\n        print(e)\n\n    if f := b\"Goodbye\":\n        print(f)\n\n    if g := 1.0:\n        print(g)\n\n    if h := 1j:\n        print(h)\n\n    if i := 0.0:\n        print(i)\n\n    if j := 0j:\n        print(j)\n\n    if k := []:\n        print(k)\n\n    if l := [1, 2, 3]:\n        print(l)\n\n    if m := True:\n        print(m)\n\n    if n := False:\n        print(n)\n\n    if o := ():\n        print(o)\n\n    if p := (1, 2, 3):\n        print(p)\n\n    if q := set():\n        print(q)\n\n    if r := {1, 2, 3}:\n        print(r)\n\n    if s := {}:\n        print(s)\n\n    if t := {1: 2}:\n        print(t)\n\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\tif a := 1; a != 0 {\n\t\tfmt.Println(a)\n\t}\n\tif c := \"\"; len(c) != 0 {\n\t\tfmt.Println(c)\n\t}\n\tif d := []byte(\"\"); len(d) != 0 {\n\t\tfmt.Println(d)\n\t}\n\tif e := \"Hello\"; len(e) != 0 {\n\t\tfmt.Println(e)\n\t}\n\tif f := []byte(\"Goodbye\"); len(f) != 0 {\n\t\tfmt.Println(f)\n\t}\n\tif g := 1.0; g != 0 {\n\t\tfmt.Println(g)\n\t}\n\tif h := 1.0i; h != 0 {\n\t\tfmt.Println(h)\n\t}\n\tif i := 0.0; i != 0 {\n\t\tfmt.Println(i)\n\t}\n\tif j := 0.0i; j != 0 {\n\t\tfmt.Println(j)\n\t}\n\tif k := []interface{}{}; len(k) != 0 {\n\t\tfmt.Println(k)\n\t}\n\tif l := []int{1, 2, 3}; len(l) != 0 {\n\t\tfmt.Println(l)\n\t}\n\tif m := true; m {\n\t\tfmt.Println(m)\n\t}\n\tif n := false; n {\n\t\tfmt.Println(n)\n\t}\n\tif o := [0]interface{}{}; len(o) != 0 {\n\t\tfmt.Println(o)\n\t}\n\tif p := [3]int{1, 2, 3}; len(p) != 0 {\n\t\tfmt.Println(p)\n\t}\n\tif q := map[interface{}]struct{}{}; len(q) != 0 {\n\t\tfmt.Println(q)\n\t}\n\tif r := map[int]struct{}{1: {}, 2: {}, 3: {}}; len(r) != 0 {\n\t\tfmt.Println(r)\n\t}\n\tif s := map[interface{}]interface{}{}; len(s) != 0 {\n\t\tfmt.Println(s)\n\t}\n\tif t := map[int]int{1: 2}; len(t) != 0 {\n\t\tfmt.Println(t)\n\t}\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### minmax\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    print(max([1, 2, 3]))\n    print(min([1, 2, 3]))\n    print(max(\"a\", \"b\", \"c\"))\n    print(min(\"a\", \"b\", \"c\"))\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\tfmt.Println(func() (m int) {\n\t\tfor i, e := range []int{1, 2, 3} {\n\t\t\tif i == 0 || e \u003e m {\n\t\t\t\tm = e\n\t\t\t}\n\t\t}\n\t\treturn\n\t}())\n\tfmt.Println(func() (m int) {\n\t\tfor i, e := range []int{1, 2, 3} {\n\t\t\tif i == 0 || e \u003c m {\n\t\t\t\tm = e\n\t\t\t}\n\t\t}\n\t\treturn\n\t}())\n\tfmt.Println(func() (m string) {\n\t\tfor i, e := range []string{\"a\", \"b\", \"c\"} {\n\t\t\tif i == 0 || e \u003e m {\n\t\t\t\tm = e\n\t\t\t}\n\t\t}\n\t\treturn\n\t}())\n\tfmt.Println(func() (m string) {\n\t\tfor i, e := range []string{\"a\", \"b\", \"c\"} {\n\t\t\tif i == 0 || e \u003c m {\n\t\t\t\tm = e\n\t\t\t}\n\t\t}\n\t\treturn\n\t}())\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### sum\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    print(sum([1, 2, 3]))\n    print(sum([1.5, 2.6, 3.7]))\n    print(sum([1j, 2j, 3j]))\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\tfmt.Println(func() (s int) {\n\t\tfor _, e := range []int{1, 2, 3} {\n\t\t\ts += e\n\t\t}\n\t\treturn\n\t}())\n\tfmt.Println(func() (s float64) {\n\t\tfor _, e := range []float64{1.5, 2.6, 3.7} {\n\t\t\ts += e\n\t\t}\n\t\treturn\n\t}())\n\tfmt.Println(func() (s complex128) {\n\t\tfor _, e := range []complex128{1.0i, 2.0i, 3.0i} {\n\t\t\ts += e\n\t\t}\n\t\treturn\n\t}())\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### reverse\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    a = [1, 2, 3, 4, 5]\n\n    for x in reversed(a):\n        print(x)\n\n    for x in a:\n        print(x)\n\n    a.reverse()\n\n    for x in a:\n        print(x)\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\ta := []int{1, 2, 3, 4, 5}\n\tfor _, x := range func(arr []int) []int {\n\t\tarr2 := make([]int, len(arr))\n\t\tfor i, e := range arr {\n\t\t\tarr2[len(arr)-i-1] = e\n\t\t}\n\t\treturn arr2\n\t}(a) {\n\t\tfmt.Println(x)\n\t}\n\tfor _, x := range a {\n\t\tfmt.Println(x)\n\t}\n\tfunc(arr []int) {\n\t\tfor i, j := 0, len(arr)-1; i \u003c j; i, j = i+1, j-1 {\n\t\t\tarr[i], arr[j] = arr[j], arr[i]\n\t\t}\n\t}(a)\n\tfor _, x := range a {\n\t\tfmt.Println(x)\n\t}\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### listcomp\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    a = [x for x in range(10)]\n    b = [x for x in range(10) if x % 2 == 0]\n    c = [x if x % 2 == 0 else 777 for x in range(10)]\n    d = [x for i, x in enumerate(c) if i % 2 == 0 if i % 3 == 1]\n    e = [(x, y) for x in c for y in d]\n    f = [(x, y) for x in c for y in next_five_numbers_times_two(x)]\n    g = [(i, j) for i in range(10) for j in range(i)]\n\n    print(a)\n    print(b)\n    print(c)\n    print(d)\n    print(e)\n    print(f)\n    print(g)\n\n\ndef next_five_numbers_times_two(a: int) -\u003e list[int]:\n    return [(a + i) * 2 for i in range(1, 6)]\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\ta := func() (elts []int) {\n\t\tfor x := 0; x \u003c 10; x++ {\n\t\t\telts = append(elts, x)\n\t\t}\n\t\treturn\n\t}()\n\tb := func() (elts []int) {\n\t\tfor x := 0; x \u003c 10; x++ {\n\t\t\tif x%2 == 0 {\n\t\t\t\telts = append(elts, x)\n\t\t\t}\n\t\t}\n\t\treturn\n\t}()\n\tc := func() (elts []int) {\n\t\tfor x := 0; x \u003c 10; x++ {\n\t\t\telts = append(elts, func() int {\n\t\t\t\tif x%2 == 0 {\n\t\t\t\t\treturn x\n\t\t\t\t}\n\t\t\t\treturn 777\n\t\t\t}())\n\t\t}\n\t\treturn\n\t}()\n\td := func() (elts []int) {\n\t\tfor i, x := range c {\n\t\t\tif i%2 == 0 {\n\t\t\t\tif i%3 == 1 {\n\t\t\t\t\telts = append(elts, x)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn\n\t}()\n\te := func() (elts [][2]int) {\n\t\tfor _, x := range c {\n\t\t\tfor _, y := range d {\n\t\t\t\telts = append(elts, [2]int{x, y})\n\t\t\t}\n\t\t}\n\t\treturn\n\t}()\n\tf := func() (elts [][2]int) {\n\t\tfor _, x := range c {\n\t\t\tfor _, y := range next_five_numbers_times_two(x) {\n\t\t\t\telts = append(elts, [2]int{x, y})\n\t\t\t}\n\t\t}\n\t\treturn\n\t}()\n\tg := func() (elts [][2]int) {\n\t\tfor i := 0; i \u003c 10; i++ {\n\t\t\tfor j := 0; j \u003c i; j++ {\n\t\t\t\telts = append(elts, [2]int{i, j})\n\t\t\t}\n\t\t}\n\t\treturn\n\t}()\n\tfmt.Println(a)\n\tfmt.Println(b)\n\tfmt.Println(c)\n\tfmt.Println(d)\n\tfmt.Println(e)\n\tfmt.Println(f)\n\tfmt.Println(g)\n}\n\nfunc next_five_numbers_times_two(a int) []int {\n\treturn func() (elts []int) {\n\t\tfor i := 1; i \u003c 6; i++ {\n\t\t\telts = append(elts, (a+i)*2)\n\t\t}\n\t\treturn\n\t}()\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### dictcomp\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    a = {(x, y): x*y for x in range(20) for y in range(5) if x*y != 0}\n    for k, v in a.items():\n        print(k, v)\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\ta := func() (d map[[2]int]int) {\n\t\td = make(map[[2]int]int)\n\t\tfor x := 0; x \u003c 20; x++ {\n\t\t\tfor y := 0; y \u003c 5; y++ {\n\t\t\t\tif x*y != 0 {\n\t\t\t\t\td[[2]int{x, y}] = x * y\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn\n\t}()\n\tfor k, v := range a {\n\t\tfmt.Println(k, v)\n\t}\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### setcomp\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    a = {x for x in range(20, 39)}\n    b = {(x, y) for x in range(100) for y in range(x, x + 5) if x % 39 in a}\n    print(a)\n    print(b)\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\ta := func() (s map[int]struct{}) {\n\t\ts = make(map[int]struct{})\n\t\tfor x := 20; x \u003c 39; x++ {\n\t\t\ts[x] = struct{}{}\n\t\t}\n\t\treturn\n\t}()\n\tb := func() (s map[[2]int]struct{}) {\n\t\ts = make(map[[2]int]struct{})\n\t\tfor x := 0; x \u003c 100; x++ {\n\t\t\tfor y := x; y \u003c x+5; y++ {\n\t\t\t\tif func() bool {\n\t\t\t\t\t_, ok := a[x%39]\n\t\t\t\t\treturn ok\n\t\t\t\t}() {\n\t\t\t\t\ts[[2]int{x, y}] = struct{}{}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn\n\t}()\n\tfmt.Println(a)\n\tfmt.Println(b)\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### generatorexp\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    a = ((x, y) for x in range(5) for y in range(x))\n    b = (w for w in (\"Where\", \"Are\", \"You?\", \"And\", \"I'm\", \"So\", \"Sorry\"))\n    for l in b:\n        print(l, next(a))\n    for rest in a:\n        print(rest)\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\ta := func() func() \u003c-chan [2]int {\n\t\twait := make(chan struct{})\n\t\tyield := make(chan [2]int)\n\t\tgo func() {\n\t\t\tdefer close(yield)\n\t\t\t\u003c-wait\n\t\t\tfor x := 0; x \u003c 5; x++ {\n\t\t\t\tfor y := 0; y \u003c x; y++ {\n\t\t\t\t\tyield \u003c- [2]int{x, y}\n\t\t\t\t\t\u003c-wait\n\t\t\t\t}\n\t\t\t}\n\t\t}()\n\t\treturn func() \u003c-chan [2]int {\n\t\t\twait \u003c- struct{}{}\n\t\t\treturn yield\n\t\t}\n\t}()\n\tb := func() func() \u003c-chan string {\n\t\twait := make(chan struct{})\n\t\tyield := make(chan string)\n\t\tgo func() {\n\t\t\tdefer close(yield)\n\t\t\t\u003c-wait\n\t\t\tfor _, w := range [7]string{\"Where\", \"Are\", \"You?\", \"And\", \"I'm\", \"So\", \"Sorry\"} {\n\t\t\t\tyield \u003c- w\n\t\t\t\t\u003c-wait\n\t\t\t}\n\t\t}()\n\t\treturn func() \u003c-chan string {\n\t\t\twait \u003c- struct{}{}\n\t\t\treturn yield\n\t\t}\n\t}()\n\tfor l, ok := \u003c-b(); ok; l, ok = \u003c-b() {\n\t\tfmt.Println(l, \u003c-a())\n\t}\n\tfor rest, ok := \u003c-a(); ok; rest, ok = \u003c-a() {\n\t\tfmt.Println(rest)\n\t}\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### ternary\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    a = 1 if True else 2\n    print(a)\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\ta := func() int {\n\t\tif true {\n\t\t\treturn 1\n\t\t}\n\t\treturn 2\n\t}()\n\tfmt.Println(a)\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### isinstance\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    a = [\"a\", 1, \"5\", 2.3, 1.2j]\n    some_condition = True\n    for x in a:\n        if isinstance(x, (str, float)):\n            print(\"String or float!\")\n        elif isinstance(x, int):\n            print(\"Integer!\")\n        else:\n            print(\"Dunno!\")\n            print(\":)\")\n\n        if isinstance(x, str) and some_condition:\n            print(\"String\")\n        elif isinstance(x, int):\n            print(\"Integer!\")\n        else:\n            print(\"Dunno!!\")\n            print(\":O\")\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\ta := []interface{}{\"a\", 1, \"5\", 2.3, 1.2i}\n\tsome_condition := true\n\tfor _, x := range a {\n\t\tswitch x.(type) {\n\t\tcase string, float64:\n\t\t\tfmt.Println(\"String or float!\")\n\t\tcase int:\n\t\t\tfmt.Println(\"Integer!\")\n\t\tdefault:\n\t\t\tfmt.Println(\"Dunno!\")\n\t\t\tfmt.Println(\":)\")\n\t\t}\n\t\tif func() bool {\n\t\t\tswitch x.(type) {\n\t\t\tcase string:\n\t\t\t\treturn true\n\t\t\t}\n\t\t\treturn false\n\t\t}() \u0026\u0026 some_condition {\n\t\t\tfmt.Println(\"String\")\n\t\t} else {\n\t\t\tswitch x.(type) {\n\t\t\tcase int:\n\t\t\t\tfmt.Println(\"Integer!\")\n\t\t\tdefault:\n\t\t\t\tfmt.Println(\"Dunno!!\")\n\t\t\t\tfmt.Println(\":O\")\n\t\t\t}\n\t\t}\n\t}\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### zip\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    x = [1, 2, 3]\n    y = [4, 5, 6]\n    zipped = zip(x, y)\n    for pair in zipped:\n        print(pair)\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\tx := []int{1, 2, 3}\n\ty := []int{4, 5, 6}\n\tzipped := func() func() \u003c-chan [2]int {\n\t\twait := make(chan struct{})\n\t\tyield := make(chan [2]int)\n\t\tgo func() {\n\t\t\tdefer close(yield)\n\t\t\t\u003c-wait\n\t\t\tfor i, e := range x {\n\t\t\t\tif i \u003e= len(y) {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t\tyield \u003c- [2]int{e, y[i]}\n\t\t\t\t\u003c-wait\n\t\t\t}\n\t\t}()\n\t\treturn func() \u003c-chan [2]int {\n\t\t\twait \u003c- struct{}{}\n\t\t\treturn yield\n\t\t}\n\t}()\n\tfor pair, ok := \u003c-zipped(); ok; pair, ok = \u003c-zipped() {\n\t\tfmt.Println(pair)\n\t}\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### map\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    a = [1, 2, 3]\n    b = map(increment, a)\n    for value in b:\n        print(value)\n\n\ndef increment(n: int) -\u003e int:\n    return n + 1\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\ta := []int{1, 2, 3}\n\tb := func() func() \u003c-chan int {\n\t\twait := make(chan struct{})\n\t\tyield := make(chan int)\n\t\tgo func() {\n\t\t\tdefer close(yield)\n\t\t\t\u003c-wait\n\t\t\tfor _, x := range a {\n\t\t\t\tyield \u003c- increment(x)\n\t\t\t\t\u003c-wait\n\t\t\t}\n\t\t}()\n\t\treturn func() \u003c-chan int {\n\t\t\twait \u003c- struct{}{}\n\t\t\treturn yield\n\t\t}\n\t}()\n\tfor value, ok := \u003c-b(); ok; value, ok = \u003c-b() {\n\t\tfmt.Println(value)\n\t}\n}\n\nfunc increment(n int) int {\n\treturn n + 1\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### repr\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    nums = [1, 2, 3, 4, 5, 6, 7, 8, 9]\n    s = repr(nums)\n    print(s + s)\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\tnums := []int{1, 2, 3, 4, 5, 6, 7, 8, 9}\n\ts := fmt.Sprintf(\"%#v\", nums)\n\tfmt.Println(s + s)\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### lambdafunc\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    f = lambda x: x * 2\n    for a in range(10):\n        print((lambda x: x + 1)(a) + f(a))\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\tf := func(x int) int {\n\t\treturn int(x) * 2\n\t}\n\tfor a := 0; a \u003c 10; a++ {\n\t\tfmt.Println(func(x int) int {\n\t\t\treturn int(x) + 1\n\t\t}(a) + f(a))\n\t}\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### timemodule\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\nimport time\n\ndef main():\n    print(\"Hello\")\n    time.sleep(3)\n    print(\"... time!\")\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\t\"time\"\n)\n\nfunc main() {\n\tfmt.Println(\"Hello\")\n\ttime.Sleep(3 * time.Second)\n\tfmt.Println(\"... time!\")\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### exit\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\nimport sys\n\n\ndef main():\n    quit()\n    quit(1)\n    exit()\n    exit(1)\n    sys.exit()\n    sys.exit(1)\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"os\"\n\nfunc main() {\n\tos.Exit(0)\n\tos.Exit(1)\n\tos.Exit(0)\n\tos.Exit(1)\n\tos.Exit(0)\n\tos.Exit(1)\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### retroactive_composite_types\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    a = []\n    a.append(3)\n\n    b = []\n    b += a\n\n    c = {}\n    c[\"hello\"] = 1\n\n    d = {}\n    d[1] = 2\n    d[\"gonna_be_an_interface\"] = \"yup\"\n\n    e = set()\n    e.add(1)\n\n    f = [[]]\n    f[0].append(1)\n\n    g = {}\n    g[(1, 2)] = 3\n\n    h = []\n    h.append(1)\n    h.append(\"hi\")\n\n    i = {}\n    i[1] = \"lol\"\n    i[\"2\"] = \"lmao\"\n\n    print(a, b, c, d, e, f, g, h)\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\ta := []int{}\n\ta = append(a, 3)\n\tb := []int{}\n\tb = append(b, a...)\n\tc := map[string]int{}\n\tc[\"hello\"] = 1\n\td := map[interface{}]interface{}{}\n\td[1] = 2\n\td[\"gonna_be_an_interface\"] = \"yup\"\n\te := map[int]struct{}{}\n\te[1] = struct{}{}\n\tf := [][]int{{}}\n\tf[0] = append(f[0], 1)\n\tg := map[[2]int]int{}\n\tg[[2]int{1, 2}] = 3\n\th := []interface{}{}\n\th = append(h, 1)\n\th = append(h, \"hi\")\n\ti := map[interface{}]string{}\n\ti[1] = \"lol\"\n\ti[\"2\"] = \"lmao\"\n\tfmt.Println(a, b, c, d, e, f, g, h)\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### isinstance_gives_type_assertion\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    stuff = [1, 5, \"hello\", 5, 12, 19, 12.5, [1, 2, 3]]\n    write_contents(stuff)\n    items = [\"\", 0, 1.1]\n    for x in items:\n        if isinstance(x, str):\n            print(\"See? It's not used here so we don't have a type assertion\")\n        elif isinstance(x, int):\n            print(\"This is very important because go's compiler will complain\")\n        else:\n            print(\"You know, I wouldn't have to worry about this if we had something to remove unused initializations\")\n\ndef write_contents(contents):\n    with open(\"contents.txt\", \"w+\") as f:\n        for item in contents:\n            if isinstance(item, str):\n                f.write(\"str: \" + item + \"\\n\")\n            elif isinstance(item, int):\n                f.write(\"int: \" + str(item) + \"\\n\")\n            else:\n                f.write(\"unknown: \" + repr(item) + \"\\n\")\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\t\"os\"\n)\n\nfunc main() {\n\tstuff := []interface{}{1, 5, \"hello\", 5, 12, 19, 12.5, []int{1, 2, 3}}\n\twrite_contents(stuff)\n\titems := []interface{}{\"\", 0, 1.1}\n\tfor _, x := range items {\n\t\tswitch x.(type) {\n\t\tcase string:\n\t\t\tfmt.Println(\"See? It's not used here so we don't have a type assertion\")\n\t\tcase int:\n\t\t\tfmt.Println(\"This is very important because go's compiler will complain\")\n\t\tdefault:\n\t\t\tfmt.Println(\"You know, I wouldn't have to worry about this if we had something to remove unused initializations\")\n\t\t}\n\t}\n}\n\nfunc write_contents(contents []interface{}) {\n\tf := func() *os.File {\n\t\tf, err := os.OpenFile(\"contents.txt\", os.O_RDWR|os.O_TRUNC|os.O_CREATE, 0o777)\n\t\tif err != nil {\n\t\t\tpanic(err)\n\t\t}\n\t\treturn f\n\t}()\n\tdefer func() {\n\t\tif err := f.Close(); err != nil {\n\t\t\tpanic(err)\n\t\t}\n\t}()\n\tfor _, item := range contents {\n\t\tswitch item := item.(type) {\n\t\tcase string:\n\t\t\tfunc() int {\n\t\t\t\tn, err := f.WriteString(\"str: \" + item + \"\\n\")\n\t\t\t\tif err != nil {\n\t\t\t\t\tpanic(err)\n\t\t\t\t}\n\t\t\t\treturn n\n\t\t\t}()\n\t\tcase int:\n\t\t\tfunc() int {\n\t\t\t\tn, err := f.WriteString(\"int: \" + fmt.Sprintf(\"%v\", item) + \"\\n\")\n\t\t\t\tif err != nil {\n\t\t\t\t\tpanic(err)\n\t\t\t\t}\n\t\t\t\treturn n\n\t\t\t}()\n\t\tdefault:\n\t\t\tfunc() int {\n\t\t\t\tn, err := f.WriteString(\"unknown: \" + fmt.Sprintf(\"%#v\", item) + \"\\n\")\n\t\t\t\tif err != nil {\n\t\t\t\t\tpanic(err)\n\t\t\t\t}\n\t\t\t\treturn n\n\t\t\t}()\n\t\t}\n\t}\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### fileloop\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    fh = open(\"file.txt\")\n    for line in fh:\n        print(line)\n    fh.close()\n\n    with open(\"file2.txt\") as fh2:\n        for line in fh2:\n            print(line)\n\n    with open(\"file3.txt\", \"rb\") as fh3:\n        for l in fh3:\n            print(l)\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"bufio\"\n\t\"fmt\"\n\t\"io\"\n\t\"os\"\n)\n\nfunc main() {\n\tfh := func() *os.File {\n\t\tf, err := os.OpenFile(\"file.txt\", os.O_RDONLY, 0o777)\n\t\tif err != nil {\n\t\t\tpanic(err)\n\t\t}\n\t\treturn f\n\t}()\n\tif sc, line, err := bufio.NewReader(fh), \"\", *new(error); true {\n\t\tfor {\n\t\t\tline, err = sc.ReadString('\\n')\n\t\t\tif err != nil \u0026\u0026 (err == io.EOF \u0026\u0026 len(line) == 0 || err != io.EOF) {\n\t\t\t\tbreak\n\t\t\t}\n\t\t\tfmt.Println(line)\n\t\t}\n\t\tif err != io.EOF {\n\t\t\tpanic(err)\n\t\t}\n\t}\n\tif err := fh.Close(); err != nil {\n\t\tpanic(err)\n\t}\n\tfunc() {\n\t\tfh2 := func() *os.File {\n\t\t\tf, err := os.OpenFile(\"file2.txt\", os.O_RDONLY, 0o777)\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn f\n\t\t}()\n\t\tdefer func() {\n\t\t\tif err := fh2.Close(); err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t}()\n\t\tif sc, line, err := bufio.NewReader(fh2), \"\", *new(error); true {\n\t\t\tfor {\n\t\t\t\tline, err = sc.ReadString('\\n')\n\t\t\t\tif err != nil \u0026\u0026 (err == io.EOF \u0026\u0026 len(line) == 0 || err != io.EOF) {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t\tfmt.Println(line)\n\t\t\t}\n\t\t\tif err != io.EOF {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t}\n\t}()\n\tfunc() {\n\t\tfh3 := func() *os.File {\n\t\t\tf, err := os.OpenFile(\"file3.txt\", os.O_RDONLY, 0o777)\n\t\t\tif err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t\treturn f\n\t\t}()\n\t\tdefer func() {\n\t\t\tif err := fh3.Close(); err != nil {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t}()\n\t\tif sc, l, err := bufio.NewReader(fh3), []byte{}, *new(error); true {\n\t\t\tfor {\n\t\t\t\tl, err = sc.ReadBytes('\\n')\n\t\t\t\tif err != nil \u0026\u0026 (err == io.EOF \u0026\u0026 len(l) == 0 || err != io.EOF) {\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t\tfmt.Println(l)\n\t\t\t}\n\t\t\tif err != io.EOF {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t}\n\t}()\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### unpacking\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    name = \"Michael Wayne Phelps\"\n    first, middle, last = name.split()\n    x = [1, 2, 3]\n    a, b, c = x\n    d, e, f = 4, 5, 6\n    g, h, i = [7, 8, 9]\n    print(first, middle, last, a, b, c, d, e, f, g, h, i)\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\t\"strings\"\n)\n\nfunc main() {\n\tname := \"Michael Wayne Phelps\"\n\tfirst, middle, last := func(s []string) (string, string, string) {\n\t\treturn s[0], s[1], s[2]\n\t}(strings.Fields(name))\n\tx := []int{1, 2, 3}\n\ta, b, c := x[0], x[1], x[2]\n\td, e, f := 4, 5, 6\n\tg, h, i := 7, 8, 9\n\tfmt.Println(first, middle, last, a, b, c, d, e, f, g, h, i)\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### cast_to_float\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    num1 = input('Enter first number: ')\n    num2 = input('Enter second number: ')\n\n    sum = float(num1) + float(num2)\n\n    print(\"The sum of\", num1, \"and\", num2, \"is\", sum)\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"bufio\"\n\t\"fmt\"\n\t\"os\"\n\t\"strconv\"\n\t\"strings\"\n)\n\nfunc main() {\n\tnum1 := func(msg string) string {\n\t\tfmt.Print(msg)\n\t\ttext, _ := bufio.NewReader(os.Stdin).ReadString('\\n')\n\t\treturn strings.ReplaceAll(text, \"\\n\", \"\")\n\t}(\"Enter first number: \")\n\tnum2 := func(msg string) string {\n\t\tfmt.Print(msg)\n\t\ttext, _ := bufio.NewReader(os.Stdin).ReadString('\\n')\n\t\treturn strings.ReplaceAll(text, \"\\n\", \"\")\n\t}(\"Enter second number: \")\n\tsum := func() float64 {\n\t\ti, err := strconv.ParseFloat(num1, 64)\n\t\tif err != nil {\n\t\t\tpanic(err)\n\t\t}\n\t\treturn i\n\t}() + func() float64 {\n\t\ti, err := strconv.ParseFloat(num2, 64)\n\t\tif err != nil {\n\t\t\tpanic(err)\n\t\t}\n\t\treturn i\n\t}()\n\tfmt.Println(\"The sum of\", num1, \"and\", num2, \"is\", sum)\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### jsondump\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\nimport json\nimport random\n\n\ndef main():\n    print(json.dumps(1))\n    print(json.dumps(\"hello\"))\n    c = json.dumps({\"hello\": 1, \"how\": \"are you\"})\n    print(c + c)\n    print(json.dumps([1, 2, 3]))\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\t\"fmt\"\n)\n\nfunc main() {\n\tfmt.Println(func() string {\n\t\tb, err := json.Marshal(1)\n\t\tif err != nil {\n\t\t\tpanic(err)\n\t\t}\n\t\treturn string(b)\n\t}())\n\tfmt.Println(func() string {\n\t\tb, err := json.Marshal(\"hello\")\n\t\tif err != nil {\n\t\t\tpanic(err)\n\t\t}\n\t\treturn string(b)\n\t}())\n\tc := func() string {\n\t\tb, err := json.Marshal(map[string]interface{}{\"hello\": 1, \"how\": \"are you\"})\n\t\tif err != nil {\n\t\t\tpanic(err)\n\t\t}\n\t\treturn string(b)\n\t}()\n\tfmt.Println(c + c)\n\tfmt.Println(func() string {\n\t\tb, err := json.Marshal([]int{1, 2, 3})\n\t\tif err != nil {\n\t\t\tpanic(err)\n\t\t}\n\t\treturn string(b)\n\t}())\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### strdunder\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\nclass A:\n    a: str\n\n    def __init__(self, val):\n        self.a = val\n\n    def __str__(self):\n        return self.a\n\n\ndef main():\n    val = A(\"ok\")\n    print(val)\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\ntype A struct {\n\ta string\n}\n\nfunc NewA(val string) (self *A) {\n\tself = new(A)\n\tself.a = val\n\treturn\n}\n\nfunc (self *A) String() string {\n\treturn self.a\n}\n\nfunc main() {\n\tval := NewA(\"ok\")\n\tfmt.Println(val)\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### globfiles\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\nimport glob\n\ndef main():\n    for py_file in glob.glob(\"./*.py\"):\n        print(\"=\" * 20, py_file, \"=\" * 20)\n        with open(py_file) as py_f:\n            for line in py_f:\n                print(line.rstrip())\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"bufio\"\n\t\"fmt\"\n\t\"io\"\n\t\"os\"\n\t\"path/filepath\"\n\t\"strings\"\n\t\"unicode\"\n)\n\nfunc main() {\n\tfor _, py_file := range func(pattern string) []string {\n\t\tmatches, err := filepath.Glob(pattern)\n\t\tif err != nil {\n\t\t\tpanic(err)\n\t\t}\n\t\treturn matches\n\t}(\"./*.py\") {\n\t\tfmt.Println(strings.Repeat(\"=\", 20), py_file, strings.Repeat(\"=\", 20))\n\t\tfunc() {\n\t\t\tpy_f := func() *os.File {\n\t\t\t\tf, err := os.OpenFile(py_file, os.O_RDONLY, 0o777)\n\t\t\t\tif err != nil {\n\t\t\t\t\tpanic(err)\n\t\t\t\t}\n\t\t\t\treturn f\n\t\t\t}()\n\t\t\tdefer func() {\n\t\t\t\tif err := py_f.Close(); err != nil {\n\t\t\t\t\tpanic(err)\n\t\t\t\t}\n\t\t\t}()\n\t\t\tif sc, line, err := bufio.NewReader(py_f), \"\", *new(error); true {\n\t\t\t\tfor {\n\t\t\t\t\tline, err = sc.ReadString('\\n')\n\t\t\t\t\tif err != nil \u0026\u0026 (err == io.EOF \u0026\u0026 len(line) == 0 || err != io.EOF) {\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t\tfmt.Println(strings.TrimRightFunc(line, unicode.IsSpace))\n\t\t\t\t}\n\t\t\t\tif err != io.EOF {\n\t\t\t\t\tpanic(err)\n\t\t\t\t}\n\t\t\t}\n\t\t}()\n\t}\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### stringmultiply\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    s = \"1, 2, 3, 4\"\n    x = s * 5\n    y = str({1, 2, 3, 4}) * 6\n    z = str([1, 2, 3, 4]) * 7\n    a = str({1: 2, 3: 4}) * 8\n    b = str((1, 2, 3, 4)) * 9\n    c = \"1, 2, 3, 4\" * 10\n    d = \"  1, 2, 3, 4  \".strip() * 11\n    print(x, y, z, a, b, c, d)\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\t\"strings\"\n)\n\nfunc main() {\n\ts := \"1, 2, 3, 4\"\n\tx := strings.Repeat(s, 5)\n\ty := strings.Repeat(fmt.Sprintf(\"%v\", map[interface{}]struct{}{1: {}, 2: {}, 3: {}, 4: {}}), 6)\n\tz := strings.Repeat(fmt.Sprintf(\"%v\", []int{1, 2, 3, 4}), 7)\n\ta := strings.Repeat(fmt.Sprintf(\"%v\", map[interface{}]interface{}{1: 2, 3: 4}), 8)\n\tb := strings.Repeat(fmt.Sprintf(\"%v\", [4]int{1, 2, 3, 4}), 9)\n\tc := strings.Repeat(\"1, 2, 3, 4\", 10)\n\td := strings.Repeat(strings.TrimSpace(\"  1, 2, 3, 4  \"), 11)\n\tfmt.Println(x, y, z, a, b, c, d)\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### scope\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\nimport random\n\n\ndef main():\n    if random.random() \u003e 0.5:\n        a = 1\n    else:\n        a = 2\n\n    if random.random() \u003e 0.5:\n        if random.random() \u003e 0.5:\n            b = 1\n        else:\n            b = 2\n    else:\n        b = 3\n\n    def hello_world():\n        c = 3\n        print(c)\n\n    hello_world()\n    print(a, b)\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\t\"math/rand\"\n\t\"time\"\n)\n\nfunc init() {\n\trand.Seed(time.Now().UnixNano())\n}\n\nfunc main() {\n\tvar a int\n\tvar b int\n\tif rand.Float64() \u003e 0.5 {\n\t\ta = 1\n\t} else {\n\t\ta = 2\n\t}\n\tif rand.Float64() \u003e 0.5 {\n\t\tif rand.Float64() \u003e 0.5 {\n\t\t\tb = 1\n\t\t} else {\n\t\t\tb = 2\n\t\t}\n\t} else {\n\t\tb = 3\n\t}\n\thello_world := func() {\n\t\tc := 3\n\t\tfmt.Println(c)\n\t}\n\thello_world()\n\tfmt.Println(a, b)\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### forelse\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    for x in range(4):\n        if x == 5:\n            break\n    else:\n        print(\"Well of course that didn't happen\")\n\n    for x in range(7):\n        if x == 5:\n            break\n    else:\n        print(\"H-hey wait!\")\n\n    i = 0\n    while i \u003c 3:\n        print(\"Works with while too\")\n        for x in range(3):\n            print(\"BTW don't worry about nested breaks\")\n            break\n        if i == 10:\n            break\n        i += 1\n    else:\n        print(\"Yeah not likely\")\n    print(i)\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\tvar x int\n\tif func() bool {\n\t\tfor x = 0; x \u003c 4; x++ {\n\t\t\tif x == 5 {\n\t\t\t\treturn false\n\t\t\t}\n\t\t}\n\t\treturn true\n\t}() {\n\t\tfmt.Println(\"Well of course that didn't happen\")\n\t}\n\tif func() bool {\n\t\tfor x = 0; x \u003c 7; x++ {\n\t\t\tif x == 5 {\n\t\t\t\treturn false\n\t\t\t}\n\t\t}\n\t\treturn true\n\t}() {\n\t\tfmt.Println(\"H-hey wait!\")\n\t}\n\ti := 0\n\tif func() bool {\n\t\tfor i \u003c 3 {\n\t\t\tfmt.Println(\"Works with while too\")\n\t\t\tfor x = 0; x \u003c 3; x++ {\n\t\t\t\tfmt.Println(\"BTW don't worry about nested breaks\")\n\t\t\t\tbreak\n\t\t\t}\n\t\t\tif i == 10 {\n\t\t\t\treturn false\n\t\t\t}\n\t\t\ti += 1\n\t\t}\n\t\treturn true\n\t}() {\n\t\tfmt.Println(\"Yeah not likely\")\n\t}\n\tfmt.Println(i)\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### slicemultiply\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    n = 3\n    x = [1, 2, 3] * n\n    x = x * 3\n    x *= 3\n    print(len(x), x)\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\tn := 3\n\tx := func(repeated []int, n int) (result []int) {\n\t\tfor i := 0; i \u003c n; i++ {\n\t\t\tresult = append(result, repeated...)\n\t\t}\n\t\treturn result\n\t}([]int{1, 2, 3}, n)\n\tx = func(repeated []int, n int) (result []int) {\n\t\tfor i := 0; i \u003c n; i++ {\n\t\t\tresult = append(result, repeated...)\n\t\t}\n\t\treturn result\n\t}(x, 3)\n\tx = func(repeated []int, n int) (result []int) {\n\t\tfor i := 0; i \u003c n; i++ {\n\t\t\tresult = append(result, repeated...)\n\t\t}\n\t\treturn result\n\t}(x, 3)\n\tfmt.Println(len(x), x)\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### printend\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef fib(n):\n    a, b = 0, 1\n    while a \u003c n:\n        print(a, end=' ')\n        a, b = b, a + b\n    print()\n\n\ndef main():\n    fib(1000)\n    print(\"All done!\", end='')\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc fib(n int) {\n\ta, b := 0, 1\n\tfor a \u003c int(n) {\n\t\tfmt.Print(a, \" \")\n\t\ta, b = b, a+b\n\t}\n\tfmt.Println()\n}\n\nfunc main() {\n\tfib(1000)\n\tfmt.Print(\"All done!\")\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### structdunders\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\nclass Number:\n    def __init__(self, x):\n        self.x = x\n\n    def __add__(self, other: 'Number'):\n        return Number(self.x + other.x)\n\n    def __mul__(self, other: 'Number'):\n        return Number(self.x * other.x)\n\n    def __str__(self):\n        return str(self.x)\n\n\nclass ComplexNumber:\n    def __init__(self, real, imag):\n        self.real = real\n        self.imag = imag\n\n\n    def __str__(self):\n        return str(self.real) + \"+\" + str(self.imag) + \"i\"\n\n\ndef main():\n    five = Number(5)\n    six = Number(6)\n    eleven = five + six\n    print(eleven)\n    fifty_five = eleven * five\n    print(fifty_five)\n    i = ComplexNumber(Number(0), Number(-1))\n    n = ComplexNumber(Number(3), Number(-6))\n    print(i, n)\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\ntype Number struct {\n\tx int\n}\n\nfunc NewNumber(x int) (self *Number) {\n\tself = new(Number)\n\tself.x = x\n\treturn\n}\n\nfunc (self *Number) Add(other Number) *Number {\n\treturn NewNumber(self.x + other.x)\n}\n\nfunc (self *Number) Mul(other Number) *Number {\n\treturn NewNumber(self.x * other.x)\n}\n\nfunc (self *Number) String() string {\n\treturn fmt.Sprintf(\"%v\", self.x)\n}\n\ntype ComplexNumber struct {\n\treal *Number\n\timag *Number\n}\n\nfunc NewComplexNumber(real *Number, imag *Number) (self *ComplexNumber) {\n\tself = new(ComplexNumber)\n\tself.real = real\n\tself.imag = imag\n\treturn\n}\n\nfunc (self *ComplexNumber) String() string {\n\treturn fmt.Sprintf(\"%v\", self.real) + \"+\" + fmt.Sprintf(\"%v\", self.imag) + \"i\"\n}\n\nfunc main() {\n\tfive := NewNumber(5)\n\tsix := NewNumber(6)\n\televen := five.Add(*six)\n\tfmt.Println(eleven)\n\tfifty_five := five.Mul(*eleven)\n\tfmt.Println(fifty_five)\n\ti := NewComplexNumber(NewNumber(0), NewNumber(-1))\n\tn := NewComplexNumber(NewNumber(3), NewNumber(-6))\n\tfmt.Println(i, n)\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### algomajorityelement\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef majorityElement(nums: list[int]) -\u003e int:\n    element, cnt = 0, 0\n\n    for e in nums:\n        if element == e:\n            cnt += 1\n        elif cnt == 0:\n            element, cnt = e, 1\n        else:\n            cnt -= 1\n\n    return element\n\ndef main():\n    print(majorityElement([3,2,3]))  # 3\n    print(majorityElement([2,2,1,1,1,2,2]))  # 2\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc majorityElement(nums []int) int {\n\telement, cnt := 0, 0\n\tfor _, e := range nums {\n\t\tif element == e {\n\t\t\tcnt += 1\n\t\t} else if cnt == 0 {\n\t\t\telement, cnt = e, 1\n\t\t} else {\n\t\t\tcnt -= 1\n\t\t}\n\t}\n\treturn element\n}\n\nfunc main() {\n\tfmt.Println(majorityElement([]int{3, 2, 3}))\n\tfmt.Println(majorityElement([]int{2, 2, 1, 1, 1, 2, 2}))\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### algobisection\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef bisection(function, a: float, b: float) -\u003e float:\n    start = a\n    end = b\n    if function(a) == 0:  # one of the a or b is a root for the function\n        return a\n    elif function(b) == 0:\n        return b\n    elif (\n            function(a) * function(b) \u003e 0\n    ):  # if none of these are root and they are both positive or negative,\n        raise ValueError(\"could not find root in given interval.\")\n    else:\n        mid = start + (end - start) / 2.0\n        while abs(start - mid) \u003e 10 ** -7:  # until precisely equals to 10^-7\n            if function(mid) == 0:\n                return mid\n            elif function(mid) * function(start) \u003c 0:\n                end = mid\n            else:\n                start = mid\n            mid = start + (end - start) / 2.0\n        return mid\n\n\ndef f(x: float):\n    return x ** 3 - 2 * x - 5\n\n\ndef main():\n    print(bisection(f, 1, 1000))\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\t\"math\"\n)\n\nfunc bisection(function func(x float64) float64, a float64, b float64) float64 {\n\tstart := a\n\tend := b\n\tif function(a) == 0 {\n\t\treturn a\n\t} else if function(b) == 0 {\n\t\treturn b\n\t} else if function(a)*function(b) \u003e 0 {\n\t\tpanic(fmt.Errorf(\"ValueError: %v\", \"could not find root in given interval.\"))\n\t} else {\n\t\tmid := start + (end-start)/2.0\n\t\tfor math.Abs(start-mid) \u003e math.Pow(10, -7) {\n\t\t\tif function(mid) == 0 {\n\t\t\t\treturn mid\n\t\t\t} else if function(mid)*function(start) \u003c 0 {\n\t\t\t\tend = mid\n\t\t\t} else {\n\t\t\t\tstart = mid\n\t\t\t}\n\t\t\tmid = start + (end-start)/2.0\n\t\t}\n\t\treturn mid\n\t}\n}\n\nfunc f(x float64) float64 {\n\treturn math.Pow(x, 3) - float64(2*x) - 5\n}\n\nfunc main() {\n\tfmt.Println(bisection(f, 1, 1000))\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### algointersection\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\nimport math\n\n\ndef intersection(function, x0: float, x1: float) -\u003e float:\n    x_n = x0\n    x_n1 = x1\n    while True:\n        if x_n == x_n1 or function(x_n1) == function(x_n):\n            raise ZeroDivisionError(\"float division by zero, could not find root\")\n        x_n2 = x_n1 - (\n                function(x_n1) / ((function(x_n1) - function(x_n)) / (x_n1 - x_n))\n        )\n        if abs(x_n2 - x_n1) \u003c 10 ** -5:\n            return x_n2\n        x_n = x_n1\n        x_n1 = x_n2\n\n\ndef f(x: float) -\u003e float:\n    return math.pow(x, 3) - (2 * x) - 5\n\n\ndef main():\n    print(intersection(f, 3, 3.5))\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\t\"math\"\n)\n\nfunc intersection(function func(x float64) float64, x0 float64, x1 float64) float64 {\n\tx_n := x0\n\tx_n1 := x1\n\tfor {\n\t\tif x_n == x_n1 || function(x_n1) == function(x_n) {\n\t\t\tpanic(\n\t\t\t\tfmt.Errorf(\"ZeroDivisionError: %v\", \"float division by zero, could not find root\"),\n\t\t\t)\n\t\t}\n\t\tx_n2 := x_n1 - function(x_n1)/((function(x_n1)-function(x_n))/(x_n1-x_n))\n\t\tif math.Abs(x_n2-x_n1) \u003c math.Pow(10, -5) {\n\t\t\treturn x_n2\n\t\t}\n\t\tx_n = x_n1\n\t\tx_n1 = x_n2\n\t}\n}\n\nfunc f(x float64) float64 {\n\treturn math.Pow(x, 3) - float64(2*x) - 5\n}\n\nfunc main() {\n\tfmt.Println(intersection(f, 3, 3.5))\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### bitwisenot\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n\tyeah = 9\n\tyeah \u0026= ~0x3\n\tprint(yeah)\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n\tyeah := 9\n\tyeah \u0026= ^3\n\tfmt.Println(yeah)\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### index\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\ndef main():\n    x = [1, 2, 3, 7, 3]\n    print(x.index(7))\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"errors\"\n\t\"fmt\"\n)\n\nfunc main() {\n\tx := []int{1, 2, 3, 7, 3}\n\tfmt.Println(func() int {\n\t\tfor i, val := range x {\n\t\t\tif val == 7 {\n\t\t\t\treturn i\n\t\t\t}\n\t\t}\n\t\tpanic(errors.New(\"ValueError\"))\n\t}())\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### timecode\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\nimport time\n\n\ndef main():\n    print(time.time())\n    print(time.time_ns())\n    print(time.ctime(time.time()))\n    print(time.ctime(1000000000))\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\t\"time\"\n)\n\nfunc main() {\n\tfmt.Println(float64(time.Now().UnixNano()) / 1000000000.0)\n\tfmt.Println(time.Now().UnixNano())\n\tfmt.Println(time.Now().Format(\"Mon Jan 02 15:04:05 2006\"))\n\tfmt.Println(time.Unix(1000000000, 0).Format(\"Mon Jan 02 15:04:05 2006\"))\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n### typecall\n\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003ePython\u003c/th\u003e\u003cth\u003eGo\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\n\n```python\nclass Custom1:\n    def __init__(self):\n        pass\n\n\nclass Custom2:\n    def __init__(self, x):\n        self.x = x\n\n\ndef main():\n    b = False\n    i = 12\n    f = 4.2\n    s = \"bla bla\"\n    sb = b\"bla bla\"\n    s1 = {1, 2, 3}\n    s2 = {\"a\", \"b\", \"c\"}\n    d1 = {\"hi\": 1}\n    d2 = {\"hi\": \"hi\"}\n    l1 = [1, 2, 3]\n    l2 = [\"a\", \"b\", \"c\"]\n    t1 = (1, 2, 3)\n    t2 = (1, 2)\n    c1 = Custom1()\n    c2 = Custom2(1)\n    c3 = Custom2(2)\n    fx = lambda x: print(x)\n    fxy = lambda x, y: print(x, y)\n\n    print(\"type(b) =\", type(b))\n    print(\"type(i) =\", type(i))\n    print(\"type(f) =\", type(f))\n    print(\"type(s) =\", type(s))\n    print(\"type(sb) =\", type(sb))\n    print(\"type(d1) =\", type(d1))\n    print(\"type(d2) =\", type(d2))\n    print(\"type(l1) =\", type(l1))\n    print(\"type(l2) =\", type(l2))\n    print(\"type(t1) =\", type(t1))\n    print(\"type(t2) =\", type(t2))\n    print(\"type(c1) =\", type(c1))\n    print(\"type(c2) =\", type(c2))\n    print(\"type(s1) =\", type(s1))\n    print(\"type(s2) =\", type(s2))\n    print(\"type(c3) =\", type(c3))\n    print(\"type(fx) =\", type(fx))\n    print(\"type(fxy) =\", type(fxy))\n    print(\"type(d1) == type(d2)?\", type(d1) == type(d2))\n    print(\"type(l1) == type(l2)?\", type(l1) == type(l2))\n    print(\"type(t1) == type(t2)?\", type(t1) == type(t2))\n    print(\"type(l1) == type(t1)?\", type(l1) == type(t1))\n    print(\"type(c1) == type(c2)?\", type(c1) == type(c2))\n    print(\"type(c2) == type(c3)?\", type(c2) == type(c3))\n    print(\"type(fx) == type(fxy)?\", type(fx) == type(fxy))\n    print(\"type(s) == str?\", type(s) == str)\n    print(\"type(sb) == bytes?\", type(sb) == bytes)\n    print(\"type(i) == int?\", type(i) == int)\n    print(\"type(f) == float?\", type(f) == float)\n    print(\"type(l1) == list?\", type(l1) == list)\n    print(\"type(t1) == tuple?\", type(t1) == tuple)\n    print(\"type(s1) == type(s2)?\", type(s1) == type(s2))\n    print(\"type(c1) == Custom1\", type(c1) == Custom1)\n    print(\"type(c2) == Custom2\", type(c2) == Custom2)\n    print(\"type(c2) == Custom1\", type(c2) == Custom1)\n\n\nif __name__ == '__main__':\n    main()\n```\n\u003c/td\u003e\u003ctd\u003e\n\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\t\"reflect\"\n)\n\ntype Custom1 struct{}\n\nfunc NewCustom1() (self *Custom1) {\n\tself = new(Custom1)\n\treturn\n}\n\ntype Custom2 struct {\n\tx int\n}\n\nfunc NewCustom2(x int) (self *Custom2) {\n\tself = new(Custom2)\n\tself.x = x\n\treturn\n}\n\nfunc main() {\n\tb := false\n\ti := 12\n\tf := 4.2\n\ts := \"bla bla\"\n\tsb := []byte(\"bla bla\")\n\ts1 := map[int]struct{}{1: {}, 2: {}, 3: {}}\n\ts2 := map[string]struct{}{\"a\": {}, \"b\": {}, \"c\": {}}\n\td1 := map[string]int{\"hi\": 1}\n\td2 := map[string]string{\"hi\": \"hi\"}\n\tl1 := []int{1, 2, 3}\n\tl2 := []string{\"a\", \"b\", \"c\"}\n\tt1 := [3]int{1, 2, 3}\n\tt2 := [2]int{1, 2}\n\tc1 := NewCustom1()\n\tc2 := NewCustom2(1)\n\tc3 := NewCustom2(2)\n\tfx := func(x interface{}) {\n\t\tfmt.Println(x)\n\t}\n\tfxy := func(x interface{}, y interface{}) {\n\t\tfmt.Println(x, y)\n\t}\n\tfmt.Println(\"type(b) =\", reflect.TypeOf(b))\n\tfmt.Println(\"type(i) =\", reflect.TypeOf(i))\n\tfmt.Println(\"type(f) =\", reflect.TypeOf(f))\n\tfmt.Println(\"type(s) =\", reflect.TypeOf(s))\n\tfmt.Println(\"type(sb) =\", reflect.TypeOf(sb))\n\tfmt.Println(\"type(d1) =\", reflect.TypeOf(d1))\n\tfmt.Println(\"type(d2) =\", reflect.TypeOf(d2))\n\tfmt.Println(\"type(l1) =\", reflect.TypeOf(l1))\n\tfmt.Println(\"type(l2) =\", reflect.TypeOf(l2))\n\tfmt.Println(\"type(t1) =\", reflect.TypeOf(t1))\n\tfmt.Println(\"type(t2) =\", reflect.TypeOf(t2))\n\tfmt.Println(\"type(c1) =\", reflect.TypeOf(c1))\n\tfmt.Println(\"type(c2) =\", reflect.TypeOf(c2))\n\tfmt.Println(\"type(s1) =\", reflect.TypeOf(s1))\n\tfmt.Println(\"type(s2) =\", reflect.TypeOf(s2))\n\tfmt.Println(\"type(c3) =\", reflect.TypeOf(c3))\n\tfmt.Println(\"type(fx) =\", reflect.TypeOf(fx))\n\tfmt.Println(\"type(fxy) =\", reflect.TypeOf(fxy))\n\tfmt.Println(\"type(d1) == type(d2)?\", reflect.TypeOf(d1).Kind() == reflect.TypeOf(d2).Kind())\n\tfmt.Println(\"type(l1) == type(l2)?\", reflect.TypeOf(l1).Kind() == reflect.TypeOf(l2).Kind())\n\tfmt.Println(\"type(t1) == type(t2)?\", reflect.TypeOf(t1).Kind() == reflect.TypeOf(t2).Kind())\n\tfmt.Println(\"type(l1) == type(t1)?\", reflect.TypeOf(l1).Kind() == reflect.TypeOf(t1).Kind())\n\tfmt.Println(\"type(c1) == type(c2)?\", reflect.TypeOf(c1) == reflect.TypeOf(c2))\n\tfmt.Println(\"type(c2) == type(c3)?\", reflect.TypeOf(c2) == reflect.TypeOf(c3))\n\tfmt.Println(\"type(fx) == type(fxy)?\", reflect.TypeOf(fx).Kind() == reflect.TypeOf(fxy).Kind())\n\tfmt.Println(\"type(s) == str?\", reflect.TypeOf(s).Kind() == reflect.String)\n\tfmt.Println(\"type(sb) == bytes?\", reflect.TypeOf(sb).Kind() == reflect.Slice)\n\tfmt.Println(\"type(i) == int?\", reflect.TypeOf(i).Kind() == reflect.Int)\n\tfmt.Println(\"type(f) == float?\", reflect.TypeOf(f).Kind() == reflect.Float64)\n\tfmt.Println(\"type(l1) == list?\", reflect.TypeOf(l1).Kind() == reflect.Slice)\n\tfmt.Println(\"type(t1) == tuple?\", reflect.TypeOf(t1).Kind() == reflect.Array)\n\tfmt.Println(\"type(s1) == type(s2)?\", reflect.TypeOf(s1).Kind() == reflect.TypeOf(s2).Kind())\n\tfmt.Println(\"type(c1) == Custom1\", reflect.TypeOf(c1) == reflect.TypeOf(new(Custom1)))\n\tfmt.Println(\"type(c2) == Custom2\", reflect.TypeOf(c2) == reflect.TypeOf(new(Custom2)))\n\tfmt.Println(\"type(c2) == Custom1\", reflect.TypeOf(c2) == reflect.TypeOf(new(Custom1)))\n}\n```\n\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\n\n## TODOs\n\nSome things I'd like to add soon...\n\n- \"value in range(start, stop, step)\" =\u003e a conditional statement\n- Exhaustive implementation of list/dict/int/float/bytes methods\n- \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnottheswimmer%2Fpytago","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnottheswimmer%2Fpytago","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnottheswimmer%2Fpytago/lists"}