相关疑难解决方法(0)

python的"设置"稳定吗?

回答另一个SO问题(那里)时出现了问题.

当我在python集上迭代几次(不在调用之间改变它)时,我可以假设它总是以相同的顺序返回元素吗?如果没有,改变订单的理由是什么?它是确定性的还是随机的?还是实现定义?

当我反复调用相同的python程序(不是随机的,不依赖于输入)时,我会得到相同的排序吗?

基本问题是,如果python set迭代顺序仅取决于用于实现集合的算法,还取决于执行上下文?

python set

17
推荐指数
2
解决办法
4910
查看次数

Julia 如何确定字典键的索引?

我在 Julia 的 Dictionary 集合中遇到了奇怪的行为。可以在 Julia 中像这样定义字典:

dictionary = Dict(1 => 77, 2 => 66, 3 => 1)
Run Code Online (Sandbox Code Playgroud)

您可以使用以下方法访问密钥keys

> keys(dictionary)

# [output] 
KeySet for a Dict{Int64, Int64} with 3 entries. Keys:
2
3
1

# now i want to make sure Julia consider above order. so i use collect and then i will call first element of it
> collect(keys(dictionary))[1]

# [output] 
2
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,输出中的键顺序keys(dictionary)非常奇怪。似乎 Julia 不考虑输入中 (key=>value) 的顺序!即使它似乎没有按升序或降序排序。Julia 如何为keys(dictionary)输出建立索引?


预期输出:

> keys(dictionary)

# …
Run Code Online (Sandbox Code Playgroud)

dictionary julia

5
推荐指数
2
解决办法
1104
查看次数

标签 统计

dictionary ×1

julia ×1

python ×1

set ×1