Запитання з тегом «go»

Go - мова програмування з відкритим кодом. Він має статичний тип, із синтаксисом, який походить від C, додає автоматичне управління пам’яттю, безпеку типу, деякі можливості динамічного набору тексту, додаткові вбудовані типи, такі як масиви змінної довжини (називаються фрагментами) та карти ключових значень, та велика стандартна бібліотека.

4
Як зробити регулярний вираз, який не враховує регістр, у Go?
Тепер, звичайно, я міг би написати свій регулярний вираз для обробки обох випадків, наприклад regexp.Compile("[a-zA-Z]"), але мій регулярний вираз будується із рядка, заданого користувачем: reg, err := regexp.Compile(strings.Replace(s.Name, " ", "[ \\._-]", -1)) Де s.Nameце ім’я. Що може бути чимось на кшталт "Північ північним заходом". Зараз найбільш очевидним рішенням для …
84 regex  go 

4
імпортування файлів go в ту саму папку
У мене виникають труднощі з імпортом локального файлу go в інший файл go. Моя структура проекту схожа на щось нижче -samplego --pkg --src ---github.com ----xxxx -----a.go -----b.go --bin Я намагаюся імпортувати a.go всередину b.go. Я спробував наступне, import "a" import "github.com/xxxx/a" Жодне з них не спрацювало .. Я розумію, що …
84 import  path  go 


5
Чому в обробниках HTTP Go, чому ResponseWriter є значенням, а Request не вказівником?
Я вивчаю Go, написавши програму для GAE, і це підпис функції обробника: func handle(w http.ResponseWriter, r *http.Request) {} Я тут новачок вказівника, то чому Requestоб’єкт є вказівником, а ResponseWriterні? Чи є необхідність мати його таким чином, чи це просто для того, щоб зробити можливим якийсь вдосконалений код на основі вказівника?
84 pointers  go 

5
Кілька програмних програм, що слухають на одному каналі
У мене є кілька програм, які намагаються одночасно приймати на одному каналі. Здається, що остання програма, яка починає отримувати на каналі, отримує значення. Це десь у специфікації мови чи це невизначена поведінка? c := make(chan string) for i := 0; i < 5; i++ { go func(i int) { <-c …
84 go 

12
Як зменшити розмір скомпільованого файлу?
Давайте порівняємо c і підемо: Hello_world.c: #include<stdio.h> int main(){ printf("Hello world!"); } Hello_world.go: package main import "fmt" func main(){ fmt.Printf("Hello world!") } Складіть обидва: $gcc Hello_world.c -o Hello_c $8g Hello_world.go -o Hello_go.8 $8l Hello_go.8 -o Hello_go і ... що це? $ls -ls ... 5,4K 2010-10-05 11:09 Hello_c ... 991K 2010-10-05 …
84 go 

7
Оператор присвоєння мовою Go
Останнім часом я грав з новою мовою програмування Google Go і дивувався, чому оператор присвоєння :=ставить двокрапку перед знаком рівності. = Чи є особлива причина, чому автори мови хотіли використовувати name := "John"замістьname = "John"
83 syntax  go 

4
Як декодувати JSON за допомогою перетворення типу з рядка в float64 в Golang?
Мені потрібно декодувати рядок JSON з плаваючим номером, наприклад: {"name":"Galaxy Nexus", "price":"3460.00"} Я використовую код Golang нижче: package main import ( "encoding/json" "fmt" ) type Product struct { Name string Price float64 } func main() { s := `{"name":"Galaxy Nexus", "price":"3460.00"}` var pro Product err := json.Unmarshal([]byte(s), &pro) if err …
83 json  go 

2
Як надіслати запит POST у Go?
Я намагаюся зробити запит POST, але не можу зробити це. З іншого боку нічого не приймається. Це як це має працювати? Мені відома PostFormфункція, але я думаю, що не можу її використовувати, оскільки її не можна перевірити httputil, так? hc := http.Client{} req, err := http.NewRequest("POST", APIURL, nil) form := …
83 go 

3
У чому різниця між go get і go install?
Погравши goдеякий час з інструментом, це виглядає так go get: (необов’язково) завантаження, компілює, та встановлює шматок програмного забезпечення, хоча і go installпросто складає та встановлює це. Чому в цьому випадку go installіснує команда, яка go getзамінює її?
83 go 

5
Як надрукувати значення покажчика об’єкта Go? Що означає значення покажчика?
Я просто граюся з Go і ще не маю хорошої ментальної моделі того, коли структури передаються за значенням або за посиланням. Це може бути дуже тупе запитання, але я просто хочу трохи поекспериментувати і подивитися, чи працюю я ще над тим самим об’єктом, чи зробив його копію (передав за значенням). …
83 go 


6
mkdir, якщо не існує, використовуючи golang
Я вивчаю golang (початківець), і я шукав як на google, так і на stackoverflow, але я не міг знайти відповіді, тому вибачте мене, якщо вже про це запитали, але як я можу mkdir, якщо в golang не існує. Наприклад, у вузлі я б використовував fs-extra з функцією secureDirSync (якщо блокування, …
83 go  directory  path  filepath  mkdir 

8
перетасувати масив у Go
Я спробував перевести наступний код Python на Go import random list = [i for i in range(1, 25)] random.shuffle(list) print(list) але моя версія Go виявилася тривалою та незграбною, оскільки немає функції перетасування, і мені довелося реалізовувати інтерфейси та конвертувати типи. Що буде ідіоматичною версією Go мого коду?
82 arrays  go 

9
Повторне використання http-з’єднань у Golang
Зараз я намагаюся знайти спосіб повторного використання з’єднань під час створення повідомлень HTTP у Golang. Я створив транспорт і клієнта так: // Create a new transport and HTTP client tr := &http.Transport{} client := &http.Client{Transport: tr} Потім я передаю цей вказівник клієнта в програму, яка робить декілька повідомлень до однієї …
82 go 

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.