JuliaPy / JuliaPy/PyCall.jl

Slice indexing of python objects?

Ouverte
#563 2 commentaires 6 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
Julia
Étoiles
1.5k
Forks
186
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

I'm trying to use [GridSpec](https://matplotlib.org/api/gridspec_api.html#matplotlib.gridspec.GridSpec) in matplotlib with PyCall, and ran into this error:

```julia
julia> using PyCall, PyPlot

# Make a GridSpec object
julia> gs_main = PyPlot.matplotlib[:gridspec][:GridSpec](1, 2)
PyObject

# In python, you can use slice indexing on a GridSpec object to make subplots
# However, the naive way of going about this doesn't work:
julia> gs_main[1:2]
ERROR: MethodError: no method matching getindex(::PyObject, ::UnitRange{Int64})
Closest candidates are:
getindex(::PyObject, ::Symbol) at /home/glynch/.julia/packages/PyCall/rUul9/src/PyCall.jl:294
getindex(::PyObject, ::AbstractString) at /home/glynch/.julia/packages/PyCall/rUul9/src/PyCall.jl:283
getindex(::PyObject, ::Integer) at /home/glynch/.julia/packages/PyCall/rUul9/src/PyCall.jl:755
...
Stacktrace:
[1] top-level scope at none:0

# Manually indexing with slice objects does work, however
julia> gs_main[:__getitem__](pybuiltin(:slice)(0, 2))
PyObject

```

Is there a more straight-forward way of accomplishing this?

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.