msvcrt
— Полезные процедуры из среды выполнения MS VC++¶
Эти функции предоставляют доступ к некоторым полезным возможностям на платформах Windows. Некоторые модули более высокого уровня используют эти функции для создания реализаций своих служб в Windows. Например, модуль getpass
использует это при реализации функции getpass()
.
Более подробную документацию по этим функциям можно найти в документации по API платформы.
Модуль реализует как обычный, так и широкозначный варианты консольного API ввода-вывода. Обычный API работает только с символами ASCII и имеет ограниченное применение для интернационализированных приложений. По возможности следует использовать широкозначный API.
Файловые операции¶
- msvcrt.locking(fd, mode, nbytes)¶
Блокировка части файла на основе файлового дескриптора fd из среды выполнения C. При сбое создается значение
OSError
. Заблокированная область файла простирается от текущей позиции файла на nbytes байт и может продолжаться до конца файла. режим должен соответствовать одной из константLK_*
, перечисленных ниже. Несколько областей в файле могут быть заблокированы одновременно, но не могут перекрываться. Смежные области не объединяются; они должны быть разблокированы по отдельности.Создает auditing event
msvcrt.locking
с аргументамиfd
,mode
,nbytes
.
- msvcrt.LK_LOCK¶
- msvcrt.LK_RLCK¶
Блокирует указанные байты. Если байты не могут быть заблокированы, программа немедленно повторяет попытку через 1 секунду. Если после 10 попыток байты не могут быть заблокированы, выводится значение
OSError
.
- msvcrt.LK_NBLCK¶
- msvcrt.LK_NBRLCK¶
Блокирует указанные байты. Если байты не могут быть заблокированы, выводится значение
OSError
.
- msvcrt.LK_UNLCK¶
Разблокирует указанные байты, которые, должно быть, были ранее заблокированы.
- msvcrt.setmode(fd, flags)¶
Установите режим перевода конца строки для файлового дескриптора fd. Чтобы перевести его в текстовый режим, флаги должны быть
os.O_TEXT
; для двоичного файла -os.O_BINARY
.
- msvcrt.open_osfhandle(handle, flags)¶
Создайте файловый дескриптор среды выполнения C из дескриптора файла handle. Параметр flags должен быть побитовым ИЛИ из
os.O_APPEND
,os.O_RDONLY
, иos.O_TEXT
. Возвращаемый файловый дескриптор может быть использован в качестве параметраos.fdopen()
для создания файлового объекта.Создает auditing event
msvcrt.open_osfhandle
с аргументамиhandle
,flags
.
- msvcrt.get_osfhandle(fd)¶
Возвращает дескриптор файла fd. Возвращает значение
OSError
, если fd не распознается.Создает auditing event
msvcrt.get_osfhandle
с аргументомfd
.
Консольный ввод-вывод¶
- msvcrt.kbhit()¶
Верните
True
, если нажатие клавиши ожидает считывания.
- msvcrt.getch()¶
Считывает нажатие клавиши и возвращает полученный символ в виде байтовой строки. На консоль ничего не выводится. Этот вызов блокируется, если нажатие клавиши еще не доступно, но не будет дожидаться нажатия Enter. Если нажатая клавиша была специальной функциональной, то будет возвращено значение
'\000'
или'\xe0'
; при следующем вызове будет возвращен код клавиши. Нажатие клавиши Control-C не может быть прочитано с помощью этой функции.
- msvcrt.getche()¶
Аналогично
getch()
, но нажатие клавиши будет повторено, если оно представляет собой печатаемый символ.
- msvcrt.putch(char)¶
Выведите строку байтов char на консоль без буферизации.
Другие функции¶
- msvcrt.heapmin()¶
Принудительно очистите кучу
malloc()
и верните неиспользуемые блоки в операционную систему. В случае сбоя возникаетOSError
.
- msvcrt.CRT_ASSEMBLY_VERSION¶
Версия сборки CRT из заголовочного файла
crtassem.h
.
- msvcrt.VC_ASSEMBLY_PUBLICKEYTOKEN¶
Токен открытого ключа сборки VC из файла заголовка
crtassem.h
.
- msvcrt.LIBRARIES_ASSEMBLY_NAME_PREFIX¶
Префикс имени сборки Libraries из заголовочного файла
crtassem.h
.