# Replace(kv-\>first(kv)\<3 ? 3=\>last(kv) : kv, Dict(1=\>2, 3=\>4)) does not work as I expect

**URL:** <https://discourse.julialang.org/t/replace-kv-first-kv-3-3-last-kv-kv-dict-1-2-3-4-does-not-work-as-i-expect/28161>\
**Category:** New to Julia\
**Created:** [August 29, 2019, 11:26am UTC](https://discourse.julialang.org/t/replace-kv-first-kv-3-3-last-kv-kv-dict-1-2-3-4-does-not-work-as-i-expect/28161 "2019-08-29T11:26:30Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Sijun](https://avatars.discourse-cdn.com/v4/letter/s/b2d939/32.png) [@Sijun](https://discourse.julialang.org/u/Sijun)\
**Post date:** [August 29, 2019, 11:26am UTC](https://discourse.julialang.org/t/replace-kv-first-kv-3-3-last-kv-kv-dict-1-2-3-4-does-not-work-as-i-expect/28161/1 "2019-08-29T11:26:31Z")

</div>

`replace(kv->first(kv)<3 ? 3=>last(kv) : kv, Dict(1=>2, 3=>4))`

(with Julia 1.2) I believe intuitively correct return value of the above expression must be :  
3=\>2  
3=\>4

But I get only 3=\>2. It really beats me.

---

<div class="post-metadata">

**Author:** ![kristoffer.carlsson](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/kristoffer.carlsson/32/22_2.png) [@kristoffer.carlsson](https://discourse.julialang.org/u/kristoffer.carlsson)\
**Post date:** [August 29, 2019, 11:43am UTC](https://discourse.julialang.org/t/replace-kv-first-kv-3-3-last-kv-kv-dict-1-2-3-4-does-not-work-as-i-expect/28161/2 "2019-08-29T11:43:46Z")

</div>

A dictionary have only one value associated with each key.

```julia
julia> Dict(3=>2, 3=>4)
Dict{Int64,Int64} with 1 entry:
  3 => 4

```

for example.

---

<div class="post-metadata">

**Author:** ![oheil](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/oheil/32/220745_2.png) [@oheil](https://discourse.julialang.org/u/oheil)\
**Post date:** [August 29, 2019, 11:44am UTC](https://discourse.julialang.org/t/replace-kv-first-kv-3-3-last-kv-kv-dict-1-2-3-4-does-not-work-as-i-expect/28161/3 "2019-08-29T11:44:51Z")

</div>

Ninjad 🙂

```julia
julia> replace(kv->first(kv)<3 ? 5=>last(kv) : kv, Dict(1=>2, 3=>4))
Dict{Int64,Int64} with 2 entries:
  3 => 4
  5 => 2

```

---

<div class="post-metadata">

**Author:** ![Sijun](https://avatars.discourse-cdn.com/v4/letter/s/b2d939/32.png) [@Sijun](https://discourse.julialang.org/u/Sijun)\
**Post date:** [August 29, 2019, 11:50am UTC](https://discourse.julialang.org/t/replace-kv-first-kv-3-3-last-kv-kv-dict-1-2-3-4-does-not-work-as-i-expect/28161/4 "2019-08-29T11:50:41Z")

</div>

Oops, shame on me. Thanks a lot!
