Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

[Enhancement] Allow `Python: <class 'module'>` as argument to `pyimport`

Aberta
#590 0 comentários 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 1 dia

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
3/5
Tempo estimado
1-2 dias
Facilidade para iniciantes
45/100
Tipo de issue
Funcionalidade
Clareza
Razoavelmente clara
Status de atividade
Estagnada
Stack de tecnologia
julia, python
Domínio
api

Direção de pesquisa

Comece pelos métodos pyimport existentes mostrados na issue e inspecione como o pyimport lida atualmente com argumentos Pair e objetos de módulo Python. Confirme que argumentos qualificados por módulo resolvem a função solicitada e determine como a robustez de string(m.name) deve ser testada; considera-se concluído quando a chamada ilustrada amodule.submodule1.submodule2 funciona por meio de pyimport.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

enhancement

With these methods:

pyimport((m, k)::Pair{Py}) = pyimport(string(m.__name__) => k)
pyimport((m, ks)::Pair{Py,<:Tuple}) = pyimport(string(m.__name__) => ks)

you can do something like

amodule = pyimport("amodule")
afunc = pyimport(amodule.submodule1.submodule2, "afunc")

You can use TAB completion at the REPL to get the submodules. This is more convenient than finding and typing the strings.

I don't know how robust string(m.__name__) is.

Linguagem predominante
Julia
Estrelas
1.1k
Forks
89
Merge médio
2d 15h
PRs com merge (30d)
7

Preparar o ambiente

Este projeto não oferece contêiner de desenvolvimento, Dockerfile nem guia de contribuição, então a configuração fica por sua conta: comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de JuliaPy/PythonCall.jl

Todas as issues de JuliaPy/PythonCall.jl

Issues semelhantes

Mais issues de Julia

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.