Go语言 基础教程 实战
生活随笔
收集整理的這篇文章主要介紹了
Go语言 基础教程 实战
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Go語言 基礎教程 實戰
猜謎游戲
package mainimport ("bufio""fmt""math/rand""os""strconv""strings""time" )func main() {maxNum := 100rand.Seed(time.Now().UnixNano()) //生成隨機數種子secretNumber := rand.Intn(maxNum) //生成一個0-100隨機數fmt.Println("要猜測的數字是 ", secretNumber)fmt.Println("請輸入你猜測數的數字")reader := bufio.NewReader(os.Stdin) //從鍵盤讀入for {input, err := reader.ReadString('\n')if err != nil {fmt.Println("輸入出錯")continue}input = strings.TrimSuffix(input, "\n")//把結尾的換行符去掉guess, err := strconv.Atoi(input)//字符串轉成int整數if err != nil {fmt.Println("無效輸入,請輸入一個整數")continue}fmt.Println("你的猜測是 ", guess)if guess > secretNumber {fmt.Println("你的猜測大于secretNumber,請重新輸入")} else if guess < secretNumber {fmt.Println("你的猜測小于secretNumber,請重新輸入")} else {fmt.Println("猜對了")break}}}在線詞典 - 抓包
右鍵檢查,找到請求,復制cUrl,
用剛剛復制的cUrl生成代碼,鏈接
代碼
package mainimport ("fmt""io/ioutil""log""net/http""strings" )func main() {client := &http.Client{}var data = strings.NewReader(`{"trans_type":"en2zh","source":"good"}`)req, err := http.NewRequest("POST", "https://api.interpreter.caiyunai.com/v1/dict", data)if err != nil {log.Fatal(err)}req.Header.Set("Accept", "application/json, text/plain, */*")req.Header.Set("Accept-Language", "zh-CN,zh;q=0.9")req.Header.Set("Connection", "keep-alive")req.Header.Set("Content-Type", "application/json;charset=UTF-8")req.Header.Set("Origin", "https://fanyi.caiyunapp.com")req.Header.Set("Referer", "https://fanyi.caiyunapp.com/")req.Header.Set("Sec-Fetch-Dest", "empty")req.Header.Set("Sec-Fetch-Mode", "cors")req.Header.Set("Sec-Fetch-Site", "cross-site")req.Header.Set("User-Agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.54 Safari/537.36")req.Header.Set("X-Authorization", "token:qgemv4jr1y38jyq6vhvi")req.Header.Set("app-name", "xy")req.Header.Set("os-type", "web")req.Header.Set("sec-ch-ua", `" Not A;Brand";v="99", "Chromium";v="101", "Google Chrome";v="101"`)req.Header.Set("sec-ch-ua-mobile", "?0")req.Header.Set("sec-ch-ua-platform", `"macOS"`)resp, err := client.Do(req)if err != nil {log.Fatal(err)}defer resp.Body.Close()bodyText, err := ioutil.ReadAll(resp.Body)if err != nil {log.Fatal(err)}fmt.Printf("%s\n", bodyText) }運行,就輸出了一串json格式的字符串。
package mainimport ("bufio""fmt""math/rand""os""strconv""strings""time" )func main() {maxNum := 100rand.Seed(time.Now().UnixNano())secretNumber := rand.Intn(maxNum)// fmt.Println("The secret number is ", secretNumber)fmt.Println("Please input your guess")reader := bufio.NewReader(os.Stdin)for {input, err := reader.ReadString('\n')if err != nil {fmt.Println("An error occured while reading input. Please try again", err)continue}input = strings.TrimSuffix(input, "\n")guess, err := strconv.Atoi(input)if err != nil {fmt.Println("Invalid input. Please enter an integer value")continue}fmt.Println("You guess is", guess)if guess > secretNumber {fmt.Println("Your guess is bigger than the secret number. Please try again")} else if guess < secretNumber {fmt.Println("Your guess is smaller than the secret number. Please try again")} else {fmt.Println("Correct, you Legend!")break}} }總結
以上是生活随笔為你收集整理的Go语言 基础教程 实战的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: (JAVA)获取对象
- 下一篇: 第5章 Python 数字图像处理(DI