É possível que um script seja carregado automaticamente quando o python (modo interativo) é executado?
Quero dizer, como o script no $Profile
PowerShell, que quando o PowerShell é executado, o script é carregado automaticamente.
Exemplo de script Python:
# autorun.py
import os
def cls():
os.system("CLS")
def pause():
os.system("pause")
#input("Press Enter to continue...")
Como fazer com que o script seja carregado automaticamente quando o python for iniciado?
Quando eu chamo Python com comando py
ou Python
.
Se você realmente precisa de uma função "inicializar python" (observe que as alterações não registradas de "maneira especial" não persistirão) , escreva-a em python e chame-a em seu "autoexec.bat" (execute-a no eventID 7001 (Login) no Agendador de Tarefas) ou por qualquer outro meio.
De outra forma:
Crie suas próprias "funções básicas" para python e faça
import basicfuncs as bf
... em qualquer código python que você criar, onde desejar usá-las.Um "def cls():" desse arquivo estaria disponível para ser usado como
bf.cls()
em seu código subsequente.Exemplo:
Onde
main
existe como adef main(argv):
em meu primefactors.py,que imprime
2x617
(os fatores primos reais de 1234)quando executado com o argumento mostrado (um script ou versão local de prompt do sys.argv padrão) .
Adicionalmente:
As duas primeiras linhas farão com que o WINDOWS inicialize algo semelhante a
ncurses
( https://en.wikipedia.org/wiki/Ncurses ). Isso permitirá que todos https://en.wikipedia.org/wiki/ANSI_escape_code sejam\x1b[
iguais a "CSI", ou seja,\x9B
na prática. CSI: Introdutor de Sequência de ControleSim, mas não existe um caminho padrão para um script de inicialização – você deve
PYTHONSTARTUP
primeiro definir manualmente a variável de ambiente, apontando para o script que deseja executar.Ele só será carregado ao iniciar sessões interativas – não ao executar um script .py. Os scripts precisam importar explicitamente os módulos que desejam.
(Para facilitar os scripts, você pode colocar os arquivos do módulo personalizado no mesmo diretório junto com os arquivos de script ou pode definir
PYTHONPATH
um diretório que contenha os módulos personalizados - de qualquer forma, você colocaria todas as funções de conveniência em algo como "mylib.py" e poderfrom mylib import cls, pause, etc, etc
.)