dongshang1979 2017-11-15 19:41
浏览 42
已采纳

什么是毒蛇的正确类型

I have the following yaml file and want to iterate over the cameraids.---

--- 
profiles:
  HDready: ' -vcodec libx264 -pix_fmt yuv420p -crf 23 -s 1280x720 '
  mobile: ' -vcodec libx264 -pix_fmt yuv420p -crf 23 -s 480x270 '

cameraids:
  111:
    fps: 30
  191:
    fps: 50
  851:
    fps: 50

I want now to iterate over the cameraids and profiles therefore I declare the variable for cameraids like this

var camids map[string]interface{}

The same as the fmt.Println(reflect.TypeOf(viper.Get("cameraids"))) prints but I always get the following error no new variables on left side of := when I try to get the map from viper

camids := viper.GetStringMap("cameraids")

Please can you explain and help me what I misunderstand, thanks.

  • 写回答

1条回答 默认 最新

  • drh19790711 2017-11-15 19:51
    关注

    If you've declared camids

    var camids map[string]interface{}
    

    above, you don't need to use := since the variable camids has been already declared.
    So just write:

    camids = viper.GetStringMap("cameraids")
    



    := is used when you want to declare the variable and assigns the value to it at the same time.

    = is used when you've already declared the variable beforehand and you're just assigning the value to it.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 全部备份安卓app数据包括密码,可以复制到另一手机上运行
  • ¥15 Python3.5 相关代码写作
  • ¥20 测距传感器数据手册i2c
  • ¥15 RPA正常跑,cmd输入cookies跑不出来
  • ¥15 求帮我调试一下freefem代码
  • ¥15 matlab代码解决,怎么运行
  • ¥15 R语言Rstudio突然无法启动
  • ¥15 关于#matlab#的问题:提取2个图像的变量作为另外一个图像像元的移动量,计算新的位置创建新的图像并提取第二个图像的变量到新的图像
  • ¥15 改算法,照着压缩包里边,参考其他代码封装的格式 写到main函数里
  • ¥15 用windows做服务的同志有吗