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.O_NOINHERIT. Возвращенный дескриптор файла может быть использован в качестве параметра дляos.fdopen()для создания объекта файла.Дескриптор файла наследуется по умолчанию. Передайте флаг
os.O_NOINHERIT, чтобы сделать его не наследуемым.Вызывает событие аудита аудита
msvcrt.open_osfhandleс аргументамиhandle,flags.
Ввод-вывод консоли
-
msvcrt.kbhit() -
Возвращает ненулевое значение, если нажатие клавиши ожидает чтения. В противном случае возвращает 0.
-
msvcrt.getch() -
Считывает нажатие клавиши и возвращает полученный символ в виде байтовой строки. Ничего не выводится на консоль. Этот вызов будет блокироваться, если нажатие клавиши еще недоступно, но не будет ждать нажатия Enter. Если нажатой клавишей была специальная функциональная клавиша, это вернет
'\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.set_error_mode(mode) -
Изменяет место, где C-среда записывает сообщение об ошибке, которая может привести к завершению программы. mode должен быть одним из
OUT_*констант, перечисленных ниже, илиREPORT_ERRMODE. Возвращает старое значение или -1 в случае ошибки. Доступно только в отладочной сборке Python.
-
msvcrt.OUT_TO_DEFAULT -
Место назначения сообщений об ошибках определяется типом приложения. Доступно только в отладочной сборке Python.
-
msvcrt.OUT_TO_STDERR -
Место назначения сообщений об ошибках — стандартный вывод ошибок. Доступно только в отладочной сборке Python.
-
msvcrt.OUT_TO_MSGBOX -
Место назначения сообщений об ошибках — окно сообщений. Доступно только в отладочной сборке Python.
-
msvcrt.REPORT_ERRMODE -
Возвращает текущее значение режима сообщений об ошибках. Доступно только в отладочной сборке Python.
-
msvcrt.CrtSetReportMode(type, mode) -
Определяет место назначения для конкретного типа сообщения, генерируемого
_CrtDbgReport()в среде MS VC++. type должен быть одним изCRT_*констант, перечисленных ниже. mode должен быть одним изCRTDBG_*констант, перечисленных ниже. Доступно только в отладочной сборке Python.
-
msvcrt.CrtSetReportFile(type, file) -
После использования
CrtSetReportMode()для указанияCRTDBG_MODE_FILE, можно указать дескриптор файла, который будет получать текст сообщения. type должен быть одним изCRT_*констант, перечисленных ниже. file должен быть дескриптором файла, который требуется указать. Доступно только в отладочной сборке Python.
-
msvcrt.CRT_WARN -
Предупреждения, сообщения и информация, не требующие немедленного внимания.
-
msvcrt.CRT_ERROR -
Ошибки, необратимые проблемы и проблемы, требующие немедленного внимания.
-
msvcrt.CRT_ASSERT -
Сбой утверждений.
-
msvcrt.CRTDBG_MODE_DEBUG -
Записывает сообщение в окно вывода отладчика.
-
msvcrt.CRTDBG_MODE_FILE -
Записывает сообщение в файл с заданным дескриптором. Необходимо вызвать
CrtSetReportFile()для определения конкретного файла или потока, который будет использоваться в качестве назначения.
-
msvcrt.CRTDBG_MODE_WNDW -
Создает окно сообщений для отображения сообщения вместе с кнопками
Abort,Retry, иIgnore.
-
msvcrt.CRTDBG_REPORT_MODE -
Возвращает текущий mode для указанного type.
-
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.13/library/msvcrt.html