Documentos de referência para essa seção:
- The Python Standard Library documentation: http://docs.python.org/library/index.html
- Python Essential Reference, David Beazley, Addison-Wesley Professional
Módulo os : funcionalidades do sistema operacional
Uma forma portável de se usar as funcionalidades dependentes do sistema operacional.
Manipulação de arquivos e diretórios
Diretório atual:
[pastacode lang=”python” message=”” highlight=”” provider=”manual”]
os.getcwd()
[/pastacode]
Listar os arquivos do diretório atual:
[pastacode lang=”python” message=”” highlight=”” provider=”manual”]
os.listdir(os.curdir)
[/pastacode]
Criar um diretório:
[pastacode lang=”python” message=”” highlight=”” provider=”manual”]
os.mkdir('diretorio')
'diretorio' in os.listdir(os.curdir)
[/pastacode]
Renomear e excluir um diretório:
[pastacode lang=”python” message=”” highlight=”” provider=”manual”]
os.rename('diretorio', 'pasta')
'diretorio' in os.listdir(os.curdir)
'pasta' in os.listdir(os.curdir)
os.rmdir('pasta')
'pasta' in os.listdir(os.curdir)
[/pastacode]
Apagar um arquivo:
[pastacode lang=”python” message=”” highlight=”” provider=”manual”]
fp = open('qualquer.txt', 'w')
fp.close()
'qualquer.txt' in os.listdir(os.curdir)
os.remove('qualquer.txt')
'qualquer.txt' in os.listdir(os.curdir)
[/pastacode]
os.path: manipulações de caminho
Fornece operações comuns caminhos dos arquivos.
[pastacode lang=”python” message=”” highlight=”” provider=”manual”]
fp = open('arquivo.txt', 'w')
fp.close()
a = os.path.abspath('arquivo.txt')
a
os.path.split(a)
os.path.dirname(a)
os.path.basename(a)
os.path.splitext(os.path.basename(a))
os.path.exists('arquivo.txt')
os.path.isfile('arquivo.txt')
os.path.isdir('arquivo.txt')
os.path.expanduser('~/local')
os.path.join(os.path.expanduser('~'), 'local', 'bin')
[/pastacode]
Executando um comando externo
[pastacode lang=”python” message=”” highlight=”” provider=”manual”]
os.system('ls') #no windows use 'dir'
[/pastacode]
Andar em um diretório
os.path.walk gera uma lista de arquivos em uma arvore de diretório.
[pastacode lang=”python” message=”” highlight=”” provider=”manual”]
for dirpath, dirnames, filenames in os.walk(os.curdir):
for fp in filenames:
print os.path.abspath(fp)
[/pastacode]
Variáveis de ambiente
[pastacode lang=”python” message=”” highlight=”” provider=”manual”]
import os
os.environ.keys()
os.environ['PYTHONPATH']
os.getenv('PYTHONPATH')
[/pastacode]
shutil: operações de alto nível em arquivos
O módulo glob fornece práticas correspondências para padrões de arquivos.
Por exemplo, procure todos os arquivos terminados em .txt:
[pastacode lang=”python” message=”” highlight=”” provider=”manual”]
import glob
glob.glob('*.txt')
[/pastacode]
Módulo sys : informações específicas do sistema
Informações específicas do sistema relacionadas ao interpretador Python.
Qual versão do python você está rodando e onde ela está instalada:
[pastacode lang=”python” message=”” highlight=”” provider=”manual”]
sys.platform
sys.version
sys.prefix
[/pastacode]
Lista de argumentos passados a um script python via linha de comandos:
[pastacode lang=”python” message=”” highlight=”” provider=”manual”]
sys.argv
[/pastacode]
sys.path é uma lista de strings que especificam os caminhos de busca para módulos. Inicializados no PYTHONPATH:
[pastacode lang=”python” message=”” highlight=”” provider=”manual”]
sys.path
[/pastacode]
pickle: persistência fácil
Útil para armazenar objetos arbitrários em um arquivo. Não rápido ou seguro!
[pastacode lang=”python” message=”” highlight=”” provider=”manual”]
import pickle
l = [1, None, 'string']
pickle.dump(l, file('teste.pkl', 'w'))
pickle.load(file('teste.pkl'))
[/pastacode]