Demorei um pouco para procurar respostas aqui, na Web e na documentação do Python, e testando por conta própria, para finalmente fazer com que meus scripts Python funcionassem sem problemas nas minhas máquinas Windows (WinXP e Win7). Então, eu apenas escrevi no blog e colo abaixo, caso seja útil para outras pessoas. Desculpe, é longo e fique à vontade para aprimorá-lo; Eu não sou especialista.
[ ATUALIZAÇÃO : Python 3.3 agora inclui o Python Launcher para Windows, que permite digitar py (em vez de python) para chamar o intérprete padrão, ou py -2, py -3, py -2.7, etc. Ele também suporta linhas shebang , permitindo que o próprio script especifique. Para versões anteriores à 3.3, o iniciador está disponível como um download separado.
http://docs.python.org/3/whatsnew/3.3.html
]
Executando scripts Python convenientemente no Windows
Talvez você esteja criando seus próprios scripts Python ou talvez alguém tenha lhe dado um para fazer algo com seus arquivos de dados. Digamos que você adquiriu um script Python e o salvou em "D: \ my scripts \ ApplyRE.py". Você deseja executá-lo de forma conveniente clicando duas vezes nele ou digitando-o na linha de comando de qualquer local, com a opção de passar parâmetros para ele assim (-o significa "sobrescreva o arquivo de saída, se ele já existir"):
ApplyRE infile.txt outfile.txt -o
Digamos que você também tenha um arquivo de dados, "C: \ some files \ some lexicon.txt". A opção mais simples é mover o arquivo ou o script para que eles fiquem no mesmo local, mas isso pode ficar confuso, então vamos supor que eles fiquem separados.
Garantindo que o Windows encontre o interpretador Python
Após a instalação do Python, verifique se a digitação do python no prompt de comando funciona (e digite exit () para sair do interpretador Python).
C:\>python
Python 3.2 (r32:88445, Feb 20 2011, 21:29:02) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()
C:\>
Se isso não funcionar, você precisará anexar algo como "; C: \ Python32" (sem aspas) à variável de ambiente PATH. Consulte PATHEXT abaixo para obter instruções.
Associando Python a .py e .pyc
Verifique se o clique duplo em ApplyRE.py o executa. (Ele também deve ter um logotipo Python como ícone e, a propósito, deve ser rotulado como "Arquivo Python".) Se isso ainda não tiver sido feito, clique com o botão direito do mouse em um arquivo .py, escolha Abrir com, escolher programa e marque "Sempre use ..." Essa associação melhora a conveniência, mas não é estritamente necessária - você pode especificar "python" toda vez que desejar executar um script, como este:
D:\my scripts>python ApplyRE.py lexicon-sample.txt -o
Running... Done.
Aqui está uma variação muito específica, que é opcional, a menos que você precise especificar uma versão diferente do intérprete.
D:\my scripts>c:\python32\python ApplyRE.py lexicon-sample.txt -o
Running... Done.
Mas isso é uma dor. Felizmente, uma vez instalado o Python, no PATH, e associado ao .py, clicar duas vezes em um arquivo .py ou digitar diretamente como um comando deve funcionar bem. Aqui, parece que estamos executando o script diretamente - é fácil e simples executá-lo em um arquivo de amostra localizado na pasta "meus scripts" junto com o script.
D:\my scripts>ApplyRE.py lexicon-sample.txt -o
Running... Done.
Omitindo a extensão .py (editando PATHEXT)
Para reduzir ainda mais a digitação, você pode informar ao Windows que os arquivos .py (e talvez os arquivos .pyc) são executáveis. Para fazer isso, clique com o botão direito do mouse em Computador e escolha Propriedades, Avançado, Variáveis de ambiente, Variáveis do sistema. Anexe "; .PY; .PYC" (sem aspas) à variável PATHEXT existente ou crie-a se você tiver certeza de que ela ainda não existe. Feche e reabra o prompt de comando. Agora você deve poder omitir o .py (FYI, isso faria com que o ApplyRE.exe ou o ApplyRE.bat fosse executado, se existir).
D:\my scripts>ApplyRE lexicon-sample.txt -o
Running... Done.
Adicionando scripts ao PATH do sistema
Se você for usar seus scripts frequentemente no prompt de comando (é menos importante usando arquivos BAT), adicione a pasta dos scripts ao PATH do sistema. (Ao lado de PATHEXT, você deverá ver uma variável PATH; anexe "; D: \ meus scripts" a ela, sem aspas.) Dessa forma, você pode executar um script de outro local nos arquivos do local atual, como este:
C:\some files>ApplyRE "some lexicon.txt" "some lexicon OUT.txt" -o
Running... Done.
Sucesso! Isso é tudo o que você precisa fazer para otimizar a linha de comando.
Executando diretamente sem ajustar o PATH
Se você é um datilógrafo rápido ou não se importa em criar um arquivo em lotes para cada situação, pode especificar caminhos completos (para o script ou para os parâmetros) em vez de alterar o PATH.
C:\some files>"d:\my scripts\ApplyRE.py" "some lexicon.txt" "some lexicon OUT.txt" -o
Running... Done.
C:\some files>d:
D:\>cd "my scripts"
D:\my scripts>ApplyRE.py "c:\some files\some lexicon.txt" "c:\some files\some lexicon OUT.txt" -o
Running... Done.
Criando atalhos ou arquivos em lote
Se .py estiver associado a um Python instalado, basta clicar duas vezes em ApplyRE.py para executá-lo, mas o console poderá aparecer e desaparecer muito rapidamente para ler sua saída (ou falha!). E para passar parâmetros, você precisa primeiro fazer um dos seguintes. (a) Clique com o botão direito do mouse e crie um atalho. Clique com o botão direito do mouse no atalho para editar propriedades e anexar parâmetros ao Target. (b) Crie um arquivo em lotes - um arquivo de texto sem formatação com um nome distinto, como ApplyRErun.bat. Essa opção provavelmente é melhor porque você pode pedir uma pausa para poder ver a saída. Aqui está o conteúdo de um arquivo BAT de amostra, escrito para ser localizado e executado a partir de c: \ alguns arquivos.
python "d:\my scripts\ApplyRE.py" "some lexicon.txt" "some lexicon OUT.txt" -o
pause
Avançado: anexando ao PYTHONPATH
Isso geralmente não é necessário, mas uma outra variável de ambiente que pode ser relevante é PYTHONPATH. Se anexarmos d: \ my scripts a essa variável, outros scripts Python em outros locais poderão utilizá-los por meio de instruções de importação.