无聊写一个查询双色球是否中奖的小程序

bcsflilong 2019-02-20 09:24:58

// lottery project main.go
package main

import (
"encoding/json"
"fmt"
"io/ioutil"
"net/http"
"net/url"
)

const (
key = "×××××××××××××××××××××××××××××××××××××××××××××××××"
lottery_id = "ssq"
)

func main() {
lotteryNum := [2]string{"04,11,18,19,26,32@04", "01,05,07,12,23,25@03"}
for index, value := range lotteryNum {

jsonStr := queryLotteryResult(value)

var dataMap map[string]interface{}

if err := json.Unmarshal([]byte(jsonStr), &dataMap); err != nil {
fmt.Println(err)
}
//fmt.Println(dataMap)
result, ok := dataMap["result"]
//fmt.Println(result)
if ok == true {
if result == nil {
fmt.Printf("查询失败")
} else {

isPrize := result.(map[string]interface{})["is_prize"]
realRes := result.(map[string]interface{})["real_lottery_res"]
lotteryDate := result.(map[string]interface{})["lottery_date"]
fmt.Println("开奖时间:", lotteryDate)
fmt.Println("当期中奖号码:", realRes)

if v := isPrize.(string); v == "0" {
fmt.Printf("查询第%d个号码[%s],结果:%s \n", index+1, value, "未中奖")
} else {
fmt.Printf("查询第%d个号码[%s],结果:%s \n", index+1, value, "中奖")
prizeResult := result.(map[string]interface{})["lottery_prize"]
//fmt.Println(prizeResult)

for _, value := range prizeResult.([]interface{}) {
name := value.(map[string]interface{})["prize_name"]
money := value.(map[string]interface{})["prize_money"]

fmt.Printf("压中%s ,金额%s \n", name, money)
}

}

}
} else {
fmt.Println("不能取值")
}
fmt.Println("======================================================================")
}

}
func queryLotteryResult(lotteryNum string) (reslut string) {
clusterinfo := url.Values{}
clusterinfo.Add("key", key)
clusterinfo.Add("lottery_id", lottery_id)
clusterinfo.Add("lottery_res", lotteryNum)

resp, err := http.PostForm("http://apis.juhe.cn/lottery/bonus", clusterinfo)
if err != nil {
fmt.Println("请求错误", err)
}
defer resp.Body.Close()

body, err := ioutil.ReadAll(resp.Body)
if err != nil {
fmt.Println("解析错误", err)
}
//fmt.Println(string(body))

return string(body)
}


我刚从java 转过来看这个 ,有一些观念还是转不过来,请大家指正一下
...全文
856 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
内容概要:本文围绕“面向高精度电流控制的PMSM多参数PSO辨识模型研究”,系统阐述了基于Simulink的永磁同步电机(PMSM)多参数辨识方法,重点采用粒子群优化算法(PSO)实现对电机关键内部参数的高精度辨识。研究构建了完整的PMSM控制系统仿真模型,结合智能优化算法,解决了传统参数辨识中精度低、收敛慢的问题,有效提升了电流环控制的动态性能与稳态精度。该方法特别适用于对控制精度和响应速度要求较高的工业应用场景,如高性能伺服系统、电动汽车驱动系统等,具有较强的工程实用价值和科研参考意义。文中提供了完整的Simulink仿真模型与配套代码,确保了研究内容的可复现性和实践操作性。; 适合人群:具备电机控制、自动化或电气工程等相关专业背景,熟悉MATLAB/Simulink仿真环境,从事电机驱动系统研发、控制算法设计或相关领域科研工作的工程师及研究生,尤其适合工作1-5年、希望深入理解先进参数辨识技术的研发人员。; 使用场景及目标:①开展高精度PMSM控制系统的设计与参数辨识研究;②学习并掌握PSO等智能优化算法在电机系统参数辨识中的具体实现与调优技巧;③完成学术论文复现、科研项目验证、毕业设计或工程原型开发,提升对现代电机控制核心技术的理解与应用能力。; 阅读建议:建议读者结合提供的Simulink模型与源代码进行动手实践,按照文档逻辑逐步搭建与调试仿真系统,重点关注PSO算法与电机模型的交互机制、目标函数设计及参数收敛过程,通过对比不同工况下的辨识结果,深入理解算法性能与控制精度之间的内在联系。

2,352

社区成员

发帖
与我相关
我的任务
社区描述
go语言学习与交流版
社区管理员
  • go语言社区
  • 俺叫西西弗斯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧