Módulo os do Python

import os

Observe que, antes de tudo, precisamos importar o módulo OS em nosso programa, somente assim podemos executar qualquer uma de suas funções.

os.nameO módulo OS do Python fornece funções fáceis que nos permitem interagir e obter informações do sistema operacional e até mesmo controlar processos até certo limite.

Módulo OS do Python

As funções que o módulo OS fornece nos permitem operar em tarefas do sistema operacional subjacente, independentemente de ser uma plataforma Windows, Macintosh ou Linux. Nesta lição, revisaremos essas funções e o que podemos fazer com elas. Vamos começar nossa jornada com essas funções e as informações que elas oferecem.

Esta função retorna o nome do módulo do sistema operacional que importa. Isso difere com base no Sistema Operacional subjacente. Atualmente, registra ‘posix’, ‘os2’, ‘ce’, ‘nt’, ‘riscos’ e ‘java’. Vamos executar isso no sistema:

>>> print(os.name)
posix

Claramente, isso pode produzir plataformas diferentes com base no interpretador.

os.environ

environ não é uma função, mas um parâmetro de processo através do qual podemos acessar as variáveis de ambiente do sistema. Vamos ver um trecho de código de exemplo:

import os
output = os.environ['HOME']
print(output)

Ao executarmos este script, o seguinte será a saída: Podemos usá-lo para trabalhar com as variáveis de ambiente, leia mais em Variável de ambiente Python definida.

os.execvp

execvp é uma das maneiras de executar outros comandos no sistema. Vamos ver um trecho de código de exemplo para esta função:

import os
program = "python"
arguments = ["hello.py"]
print(os.execvp(program, (program,) +  tuple(arguments)))

Para isso, acabamos de criar um script de exemplo como hello.py com o seguinte código:

print('Hello')

Quando executamos este script, o seguinte será o resultado:

os.getuid

Esta função do módulo os retorna o ID do usuário ou UID do processo atual, como é popularmente conhecido.

>>> os.getuid()
501

Portanto, o ID do processo do shell atual é 501.

os.rename

Com a função de renomeação do Python os, podemos facilmente renomear um arquivo.

import os
fileDir = "JournalDev.txt"
os.rename(fd,'JournalDev_Hi.txt')

Observe que para isso, devemos fornecer permissões corretas ao nosso script.

os.system

A função do sistema do Python os nos permite executar um comando no script Python, assim como se estivéssemos executando no shell. Por exemplo:

import os
currentFiles = os.system("users > users.txt")

Quando executei este script, um novo arquivo foi criado no mesmo diretório com o nome users.txt e conteúdo String como ‘shubham’, assim como é retornado pelo shell original também: Observe que este é um comando muito poderoso e deve ser usado com cautela.

os.error

A classe de erro do módulo os do Python é a classe base para erros relacionados à E/S. Portanto, podemos capturar erros de E/S usando OSError na cláusula except.

import os

try:
    f = open('abc.txt', 'r')  # file is missing
except OSError:
    print('Error')

os.getpid

Esta função retorna o ID do processo atual ou PID, como é popularmente conhecido.

>>> os.getpid()
71622

Portanto, o ID do usuário do processo shell atual é 71622.

os.listdir

Esta função apenas lista os arquivos e diretórios presentes no diretório de trabalho atual.

>>> import os
>>> os.listdir()
['.DS_Store', '.localized', 'JournalDev', 'Java', 'Python']

Retorna uma lista iterável de nomes de diretórios e arquivos.

os.uname

Esta função retorna informações que identificam o Sistema Operacional atual em que está sendo executado.

>>> os.uname()
posix.uname_result(sysname='Darwin', nodename='Shubham.local', release='17.2.0', version='Darwin Kernel Version 17.2.0: Fri Sep 29 18:27:05 PDT 2017; root:xnu-4570.20.62~3/RELEASE_X86_64', machine='x86_64')

Isso foi bastante detalhado, na verdade.

importar os.path vs importar os

os.path funciona de forma estranha na realidade. Parece que os vem com um submódulo path, mas na verdade, os é um módulo normal que opera com sys.module para suportar os.path. Vamos listar o que acontece nos bastidores:

  • Ao iniciar o Python, ele carrega muitos módulos em sys.module.
  • O módulo os também é carregado quando o Python inicia. Ele atribui seu path ao atributo de módulo específico do os.
  • Ele injeta sys.modules['os.path'] = path para que você possa fazer import os.path como se fosse um submódulo.

Resumo

Nesta lição, aprendemos sobre várias funções fornecidas pelo módulo OS em Python e vimos como elas funcionam. Veja mais lições sobre Python aqui. Referência: Documentação da API

Source:
https://www.digitalocean.com/community/tutorials/python-os-module