Разбейте то, что нужно: вам нужно преобразовать в строку, выяснить, сколько символов нужно заменить, сгенерировать строку замены такой длины, а затем включить хвост исходной строки.Кроме того, вы должны быть устойчивы, например, к строкам, слишком коротким, чтобы заменить какие-либо символы.
'X' * max(0, len(str(number)) - 4) + str(number)[-4:]
Для второй части: используйте библиотеку.
Выполнить это напрямую сложнее, чемЭто может показаться новичку, потому что вам приходится общаться с системами, которые принимают текстовые сообщения.Это будет зависеть от операционной системы, Windows против "примерно всего остального".Для ввода текста вне веб-браузера или графического интерфейса большинство систем эмулируют древние терминальные устройства только для текста, потому что пока нет достаточных оснований для изменения этого.Эти устройства имеют режимы ввода текста (символ за раз, строка за раз, необработанный текст и т. Д.), И их изменение на , а не , сразу же "выводит эхо" на введенный символ, включает в себя некоторые сложные системные вызовы, а затем другое программирование.вместо этого использовать другой символ.
Таким образом, вы захотите использовать библиотеку, чтобы позаботиться обо всех этих сложных деталях для вас.Что-то вокруг ввода пароля.Учитывая последствия для безопасности, я настоятельно рекомендую использовать проверенный и усиленный код вместо собственного.Имейте в виду, что существуют и другие проблемы, связанные с обработкой паролей (сравнение с постоянным временем, обработка памяти и т. Д.), Так что, насколько это возможно, вам следует вообще избегать этого или переносить его в другую программу, а также при обработкеиспользуйте существующие библиотеки.
Если можете, придерживайтесь стандартной библиотеки Python и используйте getpass , который ничего не выводит для паролей вместо печатизвезды.
Если вам действительно нужны звезды, найдите в https://pypi.org/ getpass и посмотрите все варианты, которые создали люди.Большинство из тех, что я видел быстрым взглядом, не внушали доверия; pysectools показалось лучше других, но я им не пользовался.