python – 为什么Go的地图迭代顺序在打印时会有所不同?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python – 为什么Go的地图迭代顺序在打印时会有所不同?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含826字,纯文字阅读大概需要2分钟。
内容图文
![python – 为什么Go的地图迭代顺序在打印时会有所不同?](/upload/InfoBanner/zyjiaocheng/766/998759fdf43745fbbfd84823ba1f90bc.jpg)
package main
import "fmt"
func main(){
sample := map[string]string{
"key1":"value1",
"key2":"value2",
"key3":"value3",
}
for i := 0;i<3;i++{
fmt.Println(sample)
}
}
上面的代码只打印了一个map [string]字符串三次.
我希望它是一个固定的输出,但它显示如下:
map[key3:value3 key2:value2 key1:value1]
map[key1:value1 key3:value3 key2:value2]
map[key2:value2 key1:value1 key3:value3]
它有所不同!
而在python中:
#!/bin/env python
#encoding=utf8
sample = {
"key1":"value1",
"key2":"value2",
"key3":"value3",
}
for i in range(3):
print sample
输出:
{'key3': 'value3', 'key2': 'value2', 'key1': 'value1'}
{'key3': 'value3', 'key2': 'value2', 'key1': 'value1'}
{'key3': 'value3', 'key2': 'value2', 'key1': 'value1'}`
解决方法:
您不能依赖获取密钥的顺序.语言规范says“地图是无序的元素组”,后来“没有指定地图上的迭代顺序,并且不保证从一次迭代到下一次迭代是相同的.”
内容总结
以上是互联网集市为您收集整理的python – 为什么Go的地图迭代顺序在打印时会有所不同?全部内容,希望文章能够帮你解决python – 为什么Go的地图迭代顺序在打印时会有所不同?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。