Spec-Zone.ru › Python 3.11

msvcrt — Полезные функции среды выполнения MS VC++

Эти функции предоставляют доступ к некоторым полезным возможностям платформ Windows. Некоторые модули более высокого уровня используют их для создания реализаций своих служб для Windows. Например, модуль getpass использует эту функцию при реализации функции getpass().

Дополнительную документацию по этим функциям можно найти в документации Platform API.

Модуль реализует обычные и широкосимвольные варианты API ввода-вывода консоли. Обычный API работает только с символами ASCII и имеет ограниченное применение в интернационализированных приложениях. По возможности следует использовать API для широких символов.

Изменено в версии 3.3: Операции в этом модуле теперь вызывают исключение OSError вместо IOError.

Операции с файлами

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.get_osfhandle(fd)

Возвращает дескриптор файла для файлового дескриптора fd. Если fd не распознан, вызывает исключение OSError.

Вызывает событие аудита msvcrt.get_osfhandle с аргументом fd.

Ввод-вывод консоли

msvcrt.kbhit()

Возвращает True, если нажатая клавиша ожидает чтения.

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.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.11/library/msvcrt.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API