Abaixo estão algumas das funções do módulo SO:
1. os.name: Esta função dá o nome do módulo do sistema operacional dependente importado. Os nomes atualmente registrados são: "posix", "nt", "os2", "ce", "java" e "riscos"
import
os
print
(os.name)
Saída:
posix
Nota: pode dar saídas diferentes em diferentes interpretadores como "posix" quando você executa o código aqui.
2. os.getcwd(): A função os.getcwd(), que retorna o diretório de trabalho atual (CWD) do arquivo usado para executar o código, pode variar de sistema para sistema.
import
os
print
(os.getcwd())
# Para imprimir o caminho absoluto em seu sistema
# os.path.abspath ('. ')
# Para imprimir arquivos e diretórios no diretório atual
# em seu sistema
# os.listdir ('. ')
Saída:
C: UsersGFGDesktopModuleOS
Observação. No caso do interpretador GFG, o diretório /root é usado.
3. os.error: Todas as funções neste módulo geram OSError para nomes e caminhos de arquivo inválidos ou inacessíveis ou outros argumentos que são do tipo correto, mas não são aceitos pelo sistema operacional. os.error — é um alias para a exceção OSError inline.
import
os
tente
:
# Se o arquivo não existe,
# então isso lançará um IOError
nome do arquivo
=
`GFG.txt`
f
=
open
(nome do arquivo,
`rU`
)
text
=
f.read()
f.close()
# Cont rol salta aqui se
# qualquer uma das linhas acima lançará um IOError.
exceto
IOError:
# print (os.error) será "classe ' OSError ' >
print
(
`Problema de leitura:`
+
filename)
# De qualquer forma, o código continua com
# linha após try / except
Saída:
Problema de leitura: GFG.txt
Gerenciamento de objetos de arquivo
4. os.popen(): Este método abre um pipe para ou de um comando. O valor de retorno pode ser lido ou escrito dependendo se o modo é ' r' ou ' w '.
Sintaxe:
os.popen (comando [, mode [, bufsize]])
Parâmetros de modo & amp ; bufsize não são parâmetros obrigatórios, se não forem fornecidos, o modo padrão é "r".
import
os
fd
=
" GFG .txt "
# popen () é como open ()
arquivo
=
abrir
(fd,
`w`
)
arquivo
. write (
"Olá"
)
arquivo
. close()
arquivo
=
open
(fd,
`r`
)
texto
=
arquivo
. read()
print
(texto)
< br> # popen() fornece um canal/gateway e acessa o arquivo diretamente
file
=
os.popen (fd ,
`w`
)
arquivo
. write (
"Olá"
)
# Arquivo não fechado, exibido na função a seguir.
Saída:
Olá
Observação: O popen de saída () não será exibido, alterações diretas serão feitas no arquivo.
5. os.close(): Fecha o descritor de arquivo fd. Um arquivo aberto com open() só pode ser fechado com close(). Mas um arquivo aberto com os.popen() pode ser fechado com close() ou os.close(). Se tentarmos fechar um arquivo aberto com open() usando os.close(), o Python lançará um TypeError.
import
os
fd
=
"GFG.txt"
arquivo
=
abrir
(fd,
`r`
)
texto
=
arquivo
. leia ()
print
(texto)
os.close (
arquivo
)
Exit:
Traceback (última chamada mais recente): Arquivo "C: UsersGFGDesktopGeeksForGeeksOSFile.py", linha 6, em os.close (arquivo) TypeError: an integer is obrigatório (obteve o tipo _io.TextIOWrapper)
Observação: o mesmo erro não pode ser emitido devido à falta de permissões ou permissões do arquivo.
6. os.rename(): o arquivo old.txt pode ser renomeado para new.txt usando a função os.rename(). O nome do arquivo só muda se o arquivo existir e o usuário tiver permissões suficientes para modificá-lo.
import
os
fd
=
" GFG .txt "
os.rename (fd,
` New.txt`
)
os.rename (fd,
`New .txt`
)
Sair:
Traceback (mais última chamada recente): Arquivo "C: UsersGFGDesktopModuleOSGeeksForGeeksOSFile.py", linha 3, em os.rename (fd, `New.txt`) FileNotFoundError: [WinError 2] O sistema não pode encontrar o arquivo especificado: `GFG.txt` - > `New.txt`
Compreendendo a saída: o nome do arquivo" GFG.txt "existe , então na primeira vez que você usar os.rename(), o arquivo será renomeado. Quando a função os.rename() é chamada novamente, o arquivo "New.txt" existe e não "GFG.txt"
portanto, o Python lança um FileNotFoundError.
Link: https://docs.python.org/2/library/os.html
Este artigo é fornecido por Piyush Doorvar . Se você é Python.Engineering e gostaria de contribuir, você também pode escrever um artigo usando contribute.python.engineering ou postando um artigo contribua @ python.engineering. Veja meu artigo que aparece na página inicial do Python.Engineering e ajude outros geeks.
Por favor, poste comentários se encontrar algo errado ou se quiser compartilhar mais informações sobre o tópico discutido acima.