msvcrt — Полезные функции из среды выполнения MS VC++
Эти функции предоставляют доступ к некоторым полезным возможностям на платформах Windows. Некоторые модули более высокого уровня используют эти функции для создания реализаций своих сервисов на Windows. Например, модуль getpass использует их при реализации функции getpass().
Дополнительную документацию по этим функциям можно найти в документации по 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 из дескриптора файла handle. Параметр flags должен быть побитовым дизъюнкцией
os.O_APPEND,os.O_RDONLYиos.O_TEXT. Полученный дескриптор файла может быть использован в качестве параметра кos.fdopen()для создания объекта файла.Поднимает событие аудита аудита
msvcrt.open_osfhandleс аргументамиhandle,flags.
Ввод-вывод консоли
-
msvcrt.kbhit() -
Возвращает
Trueесли нажатие клавиши ожидается для чтения.
-
msvcrt.getch() -
Читает нажатие клавиши и возвращает полученный символ в виде байтовой строки. Ничего не выводится на консоль. Этот вызов будет блокироваться, если нажатие клавиши еще не доступно, но не будет ждать нажатия Enter. Если нажата специальная функциональная клавиша, возвращает
'\000'или'\xe0'; следующий вызов вернет код клавиши. Нажатие клавиши Control-C не может быть прочитано с помощью этой функции.
-
msvcrt.getwch() -
Вариант широких символов функции
getch(), возвращающий значение Юникода.
-
msvcrt.getche() -
Аналогично
getch(), но нажатие клавиши будет выведено на консоль, если оно представляет собой печатаемый символ.
-
msvcrt.getwche() -
Вариант широких символов функции
getche(), возвращающий значение Юникода.
-
msvcrt.putch(char) -
Выводит байтовую строку char на консоль без буферизации.
-
msvcrt.putwch(unicode_char) -
Вариант широких символов функции
putch(), принимающий значение Юникода.
-
msvcrt.ungetch(char) -
Возвращает байтовую строку char в буфер консоли; она будет следующим символом, считанным функцией
getch()илиgetche().
-
msvcrt.ungetwch(unicode_char) -
Вариант широких символов функции
ungetch(), принимающий значение Юникода.
Другие функции
-
msvcrt.heapmin() -
Принудительно очищает кучу
malloc()и возвращает неиспользуемые блоки операционной системе. При ошибке поднимаетOSError.
-
msvcrt.CRT_ASSEMBLY_VERSION -
Версия сборки CRT из файла заголовка
crtassem.h.
-
msvcrt.VC_ASSEMBLY_PUBLICKEYTOKEN -
Токен общедоступного ключа сборки VC из файла заголовка
crtassem.h.
-
msvcrt.LIBRARIES_ASSEMBLY_NAME_PREFIX -
Префикс имени сборки библиотек из файла заголовка
crtassem.h.
© 2001–2024 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.12/library/msvcrt.html