JuliaPy / JuliaPy/PythonCall.jl

Single-index access to matrix results in confusing error

未关闭
#432 1 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
bug
主要语言
Julia
星标
1.1k
派生
86
平均合并
1 天 22 小时
30 天内合并 PR
3

描述

**Affects:** JuliaCall

**Describe the bug**

```
from juliacall import Main as jl
z = jl.seval("[0 1; 2 3]")
z[0]
```

results in the stack trace

```
File ~/.julia/packages/PythonCall/wXfah/src/jlwrap/array.jl:310, in __getitem__(self, k)
308 return bool(len(self))
309 def __getitem__(self, k):
--> 310 return self._jl_callmethod($(pyjl_methodnum(pyjlarray_getitem)), k)
311 def __setitem__(self, k, v):
312 self._jl_callmethod($(pyjl_methodnum(pyjlarray_setitem)), k, v)

JuliaError: "an error occurred while setting an error"
```

I would expect `z[0]` to have the same output as `list(z)[0]`. The latter outputs just `0`. Fair enough if you want to choose a different semantics though, since `z[0,:]` is another reasonable choice. Regardless, the error message is confusing as it stands.

**Your system**

- macos 13.6
- python 3.11.4
- julia 1.9.4
- juliacall 0.9.15
JuliaPkg Status
/Users/pcrein/.pyenv/versions/3.11.4/envs/pyqsr-3.11.4/julia_env/pyjuliapkg/juliapkg.json (empty project)
Julia 1.9.4 @ /Users/pcrein/.julia/juliaup/julia-1.9.4+0.aarch64.apple.darwin14/bin/julia

贡献指南

这个仓库没有索引到贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。