msvcrt — Полезные процедуры из среды выполнения MS VC++
Эти функции предоставляют доступ к некоторым полезным возможностям на платформах Windows. Некоторые модули более высокого уровня используют эти функции для создания реализаций своих служб для Windows. Например, модуль getpass использует его при реализации функции getpass().
Дополнительную документацию по этим функциям можно найти в документации Platform API.
Модуль реализует обычные и широкосимвольные варианты API консольного ввода-вывода. Обычный API работает только с символами ASCII и имеет ограниченное применение в интернационализированных приложениях. По возможности следует использовать широкосимвольный API.
Операции с файлами
-
msvcrt.locking(fd, mode, nbytes) -
Блокирует часть файла, связанного с файловым дескриптором fd среды выполнения C. В случае сбоя вызывает
OSError. Заблокированная область файла начинается с текущей позиции в файле и имеет длину nbytes байт; она может выходить за конец файла. Значение mode должно быть одной из перечисленных ниже константLK_*. В файле можно одновременно заблокировать несколько областей, но они не должны пересекаться. Соседние области не объединяются; их необходимо разблокировать по отдельности.Вызывает событие аудита
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. Чтобы установить текстовый режим, значение flags должно быть равно
os.O_TEXT; для двоичного режима —os.O_BINARY.
-
msvcrt.open_osfhandle(handle, flags) -
Создаёт файловый дескриптор среды выполнения C из файлового дескриптора Windows handle. Параметр flags должен быть побитовым ИЛИ значений
os.O_APPEND,os.O_RDONLYиos.O_TEXT. Возвращённый файловый дескриптор можно использовать в качестве параметра дляos.fdopen(), чтобы создать файловый объект.Вызывает событие аудита
msvcrt.open_osfhandleс аргументамиhandle,flags.
-
msvcrt.get_osfhandle(fd) -
Возвращает дескриптор Windows для файлового дескриптора fd. Если fd не распознан, вызывает
OSError.Вызывает событие аудита
msvcrt.get_osfhandleс аргументомfd.
Ввод-вывод консоли
-
msvcrt.kbhit() -
Возвращает
True, если нажатие клавиши ожидает чтения.
-
msvcrt.getch() -
Считывает нажатие клавиши и возвращает соответствующий символ в виде байтовой строки. Символ не отображается в консоли. Вызов блокируется, если нажатие клавиши ещё не доступно, но не ожидает нажатия клавиши Ввод. Если была нажата специальная функциональная клавиша, функция возвращает
'\000'или'\xe0'; следующий вызов вернёт код клавиши. Нажатие клавиш Control-C невозможно считать этой функцией.
-
msvcrt.getwch() -
Широкосимвольный вариант
getch(), возвращающий значение Unicode.
-
msvcrt.getche() -
Работает аналогично
getch(), но нажатие клавиши отображается, если ему соответствует печатный символ.
-
msvcrt.getwche() -
Широкосимвольный вариант
getche(), возвращающий значение Unicode.
-
msvcrt.putch(char) -
Выводит байтовую строку char в консоль без буферизации.
-
msvcrt.putwch(unicode_char) -
Широкосимвольный вариант
putch(), принимающий значение Unicode.
-
msvcrt.ungetch(char) -
Возвращает байтовую строку char в буфер консоли, чтобы она стала следующим символом, считываемым функцией
getch()илиgetche().
-
msvcrt.ungetwch(unicode_char) -
Широкосимвольный вариант
ungetch(), принимающий значение Unicode.
Другие функции
-
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.
© 2001–2024 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.12/library/msvcrt.html