msvcrt
— Rotinas úteis do tempo de execução do MS VC++¶
Essas funções fornecem acesso a alguns recursos úteis nas plataformas Windows. Alguns módulos de nível superior usam essas funções para criar as implementações do Windows de seus serviços. Por exemplo, o módulo getpass
usa isso na implementação da função getpass()
.
Mais documentação sobre essas funções pode ser encontrada na documentação da API da plataforma.
O módulo implementa as variantes normal e ampla de caracteres da API de E/S do console. A API normal lida apenas com caracteres ASCII e é de uso limitado para aplicativos internacionalizados. A API ampla de caracteres deve ser usada sempre que possível.
Alterado na versão 3.3: As operações neste módulo agora levantam OSError
onde IOError
foi levantado.
Operações com arquivos¶
- msvcrt.locking(fd, mode, nbytes)¶
Lock part of a file based on file descriptor fd from the C runtime. Raises
OSError
on failure. The locked region of the file extends from the current file position for nbytes bytes, and may continue beyond the end of the file. mode must be one of theLK_*
constants listed below. Multiple regions in a file may be locked at the same time, but may not overlap. Adjacent regions are not merged; they must be unlocked individually.Levanta um evento de auditoria
msvcrt.locking
com argumentosfd
,mode
,nbytes
.
- msvcrt.LK_LOCK¶
- msvcrt.LK_RLCK¶
Bloqueia os bytes especificados. Se os bytes não puderem ser bloqueados, o programa tentará imediatamente novamente após 1 segundo. Se, após 10 tentativas, os bytes não puderem ser bloqueados,
OSError
será levantado.
- msvcrt.LK_NBLCK¶
- msvcrt.LK_NBRLCK¶
Bloqueia os bytes especificados. Se os bytes não puderem ser bloqueados,
OSError
é levantado.
- msvcrt.LK_UNLCK¶
Desbloqueia os bytes especificados, que devem ter sido bloqueados anteriormente.
- msvcrt.setmode(fd, flags)¶
Defina o modo de conversão de final de linha para o descritor de arquivo fd. Para configurá-lo no modo de texto, flags deve ser
os.O_TEXT
; para binário, deve seros.O_BINARY
.
- msvcrt.open_osfhandle(handle, flags)¶
Cria um descritor de arquivo em tempo de execução C a partir do identificador de arquivo handle. O parâmetro flags deve ser um OR bit a bit de
os.O_APPEND
,os.O_RDONLY
eos.O_TEXT
. O descritor de arquivo retornado pode ser usado como um parâmetro paraos.fdopen()
para criar um objeto arquivo.Levanta um evento de auditoria
msvcrt.open_osfhandle
com argumentoshandle
,flags
.
- msvcrt.get_osfhandle(fd)¶
Retorna o identificador de arquivo para o descritor de arquivo fd. Leva
OSError
se fd não for reconhecido.Levanta um evento de auditoria
msvcrt.get_osfhandle
com argumentofd
.
E/S de console¶
- msvcrt.kbhit()¶
Retorna
True
se um pressionamento de tecla estiver aguardando para ser lido.
- msvcrt.getch()¶
Lê um pressionamento de tecla e retorna o caractere resultante como uma sequência de bytes. Nada é ecoado no console. Essa chamada será bloqueada se um pressionamento de tecla ainda não estiver disponível, mas não esperará que Enter seja pressionado. Se a tecla pressionada for uma tecla de função especial, ela retornará
\000'
ou'\xe0'
; a próxima chamada retornará o código da chave. A tecla Control-C não pode ser lida com esta função.
- msvcrt.getche()¶
Semelhante a
getch()
, mas o pressionamento de tecla será repetido se representar um caractere imprimível.
- msvcrt.putch(char)¶
Imprime a string de bytes char no console sem armazenar em buffer.