mrx6s0
(usa Ubuntu)
Enviado em 05/08/2019 - 13:55h
pylm escreveu:
Eu não gosto de fazer assim pois não fica claro a qual módulo a função usada pertence.
Por exemplo, se o módulo a tem uma função chamada func1 e você utiliza o método citado então o código fica assim:
from a import *
from b import *
func1()
E não dá pra saber que func1 pertence ao módulo a, o meu método preferido seria:
from a import func1
func1()
E aí você vai saber de onde vem func1, ou ainda:
import a
a.func1()
Além de que, o * importa todas as classes e funções de determinado módulo e fica tudo bagunçado além de ter a possibilidade de você sobrescrever funções/classes de nomes iguais. Se for realmente necessário importar tudo simplesmente utilize o método acima.
E quando a função tem parâmetros, como os defino no main?
digamos que:
#a.py
def func(path, dest):
....
##
from a import func
"""
...
"""
#main.py
import a
from a import func
i f__name__ == "__main__":
func()
daria erro por não conter nenhum argumento para a fun(path, dest). E se estas forem adcionadas dará erro por elas não estarem definidas.... Qual o ''pulo do gato'' nessa situação?
Abraço!