Como Abrir uma script python de outro script python?

3,841 views
Skip to first unread message

Lario dos Santos Diniz

unread,
Dec 12, 2013, 8:26:47 AM12/12/13
to python...@googlegroups.com

Bom dia.


Amigos, estou com uma duvido e gostaria da ajuda de vocês, se não for muito incomodo.

Eu tenho um script (ex1.py), que é uma janela em Tkinter e eu quero que ele abra um outro script (ex2.py) que é uma outra janela em Tkinter.


Eu tentei colocar no ex1.py:


import os

os.startfile(‘ex2’)


Porem a outra janela não aparece.


Estou usando Python 3.3 em um S.O. Windows 7

 

Li a documentação os e a documentação de subprocess e não consegui descobrir, alguém pode me ajudar?

 

Além disso, existe alguma forma do meu script ‘ex2.py’ retornar um valor para o meu script ‘ex1.py’?


Desde já, obrigado.



--

Lário dos Santos Diniz
Administrador PDMS, Programador, Desenhista projetista.
+21 820717-49
Consultorias e Inovações
www.softwarecurriculo.com.br/LarioDiniz
Gosta de Metal? Conheça a Minha banda:
www.aconegro.com



















Helder

unread,
Dec 12, 2013, 8:52:40 AM12/12/13
to python...@googlegroups.com
Vc já tentou usar o segundo script como se fosse um módulo?
Vc daria um import dele no primeiro script e depois chamava algum metodo para abrir a janela.


--
--
------------------------------------
Grupo Python-Brasil
http://www.python.org.br/wiki/AntesDePerguntar
 
<*> Para visitar o site do grupo na web, acesse:
http://groups.google.com/group/python-brasil
 
<*> Para sair deste grupo, envie um e-mail para:
python-brasi...@googlegroups.com
 
---
Você está recebendo esta mensagem porque se inscreveu no grupo "Python Brasil" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um e-mail para python-brasi...@googlegroups.com.
Para obter mais opções, acesse https://groups.google.com/groups/opt_out.



--
Helder C. R. de Oliveira
http://helderc.net

Lario dos Santos Diniz

unread,
Dec 12, 2013, 9:11:08 AM12/12/13
to python...@googlegroups.com
Obrigado Helder, desta forma funciona.


Você abriu meus olhos para uma coisa que eu não tinha percebido ainda. :D

Rômulo Collopy

unread,
Dec 12, 2013, 9:32:55 AM12/12/13
to Python Brasil
Lario,

Todo arquivo .py pode ser importado como módulo. Porém, se faz sentido importá-lo como módulo, depende do conteúdo do arquivo.

Se você quiser usar um conjunto de arquivos como módulo, basta colocá-los numa pasta que contenha um arquivo __init__.py. O nome do módulo será o nome da pasta.

Abraço,



Rômulo Collopy
+55 21 986 357 035

Jonathan Gonçalves da Silva

unread,
Dec 12, 2013, 11:58:27 AM12/12/13
to python...@googlegroups.com
Maneiro. To acostumado a trabalhar com vários arquivos mas dessa não sabia:


Se você quiser usar um conjunto de arquivos como módulo, basta colocá-los numa pasta que contenha um arquivo __init__.py. O nome do módulo será o nome da pasta.


Para funcionar bem o __init__.py teria que importar td o resto ou por padrão o python sabe que ele estaria fazendo isso?
Jonathan G. da Silva

RespondeAí - www.respondeai.com



Lario dos Santos Diniz

unread,
Dec 12, 2013, 12:34:18 PM12/12/13
to python...@googlegroups.com
Pessoal, eu não estou usando o arquivo __init__.py
Eu simplesmente Coloquei o arquivo com as funções que geram as janelas em uma pasta que esta setada na variável de ambiente e importo normalmente.

Existe alguma pratica recomendada para utilizar o arquivo __init__.py?

Rômulo Collopy

unread,
Dec 12, 2013, 12:37:45 PM12/12/13
to Python Brasil
Oi Jonathan, 

Se você tem:
main.py
pacote/
    __init__.py
    ext1.py
    ext2.py
    subpacote/
        __init__.py
        ext3.py


você pode, em main, chamar os objeto como pacote.ext1.obj ou pacote.subpacote.ext3.obj, ou 
em __init__.py você faz:

from ext1 import *
from subpacote import *

e chama só pacote.obj

Não é uma explicação exaustiva, mas acho que deu pra entender, não?





        

Rômulo Collopy
+55 21 986 357 035



Em 12 de dezembro de 2013 14:58, Jonathan Gonçalves da Silva <jonath...@gmail.com> escreveu:

Rômulo Collopy

unread,
Dec 12, 2013, 12:40:07 PM12/12/13
to Python Brasil
Sim, Lario:

The __init__.py files are required to make Python treat the directories as containing packages; this is done to prevent directories with a common name, such as string, from unintentionally hiding valid modules that occur later on the module search path. In the simplest case, __init__.py can just be an empty file, but it can also execute initialization code for the package or set the __all__ variable, described later.


Rômulo Collopy
+55 21 986 357 035



Fabio C. Barrionuevo da Luz

unread,
Dec 12, 2013, 12:49:48 PM12/12/13
to python...@googlegroups.com
Fábio C. Barrionuevo da Luz
Acadêmico de Sistemas de Informação na Faculdade Católica do Tocantins - FACTO
Palmas - Tocantins - Brasil - América do Sul

Helder

unread,
Dec 12, 2013, 1:16:30 PM12/12/13
to python...@googlegroups.com
Fico feliz em ter ajudado Lário.

Até mais.
Reply all
Reply to author
Forward
0 new messages