Программа Python для сохранения первых N элементов строки и замены оставшихся на K
В этой статье мы узнаем, как использовать внутренние функции Python, такие как len(), slicing(), replace(), ljust(), чтобы сохранить первый N элемент строки и заменить оставшиеся на k. Строки Python легко создаются путем простого заключения букв в кавычки. Python обрабатывает одинарные и двойные кавычки одинаково. Присвоить значение переменной и создать строку очень просто.
Пример
Предположим, мы взяли значения входной строки N, K. Теперь мы сохраним первые N символы входной строки и заменим их заданным символом K, используя описанные выше методы.
Вход
inputString = 'tutorialspoint'
input_N = 9
input_K = "#"
Выход
Retaining N{9} characters and replacing rest with '#': tutorials#####
В приведенном выше примере учебники первых N(9) символов входной строки сохраняются, а остальные символы заменяются входным K, т. е. #< /б> символ.
Использование оператора *, нарезки и функции len()
В этом методе мы собираемся использовать оператор * и внутренние функции, такие как Slicing и len(), чтобы сохранить первые N элементов строки, а затем заменить оставшиеся на K. Здесь функция len() — это количество элементов в объекте. возвращается методом len().
Алгоритм (шаги)
Ниже приводится алгоритм/шаги, которым необходимо следовать для выполнения желаемой задачи.
-
Создайте переменную для хранения входной строки.
Распечатайте входную строку.
Создайте еще одну переменную для хранения входного количества N элементов, которые нужно сохранить.
Создайте еще одну переменную для хранения входного символа K, который будет заменен остальными элементами.
Разрежьте первые N символов строки, чтобы сохранить первые N элементов.
Умножьте данный символ на оставшееся количество оставшихся элементов.
Объедините две приведенные выше строки с помощью оператора +.
Выведите результирующую строку, сохранив входные N элементов и заменив оставшиеся входным k-символом.
Пример
Следующая программа возвращает строку после сохранения входных элементов N и замены оставшихся входным символом k с использованием оператора *, разрезания и функции len():
# input string
inputString = 'tutorialspoint'
# printing input string
print("Input string:", inputString)
# input number of elements to be retained
input_N = 9
# input character to be replaced with rest of other elements
input_K = "#"
# Slicing till the input N index to retain the first N elements
# Multiplying the remaining number of elements with the replaced character
resultantStr = inputString[:input_N] + input_K * (len(inputString) - input_N)
# printing resultant string after retaining and replacing with the input character
print("Retaining N{9} characters and replacing rest with '#':", resultantStr)
Выход
При выполнении вышеуказанная программа сгенерирует следующий вывод:
Input string: tutorialspoint
Retaining N{9} characters and replacing rest with '#': tutorials#####
Использование функций нарезки, ljust() и len()
В этом методе мы не собираемся использовать внутренние функции Python, такие как нарезка, ljust() и len(), для выполнения поставленной задачи.
Синтаксис
string.ljust(length, character)
Здесь функция ljust() используется для выравнивания строки по левому краю с заданным символом в качестве символа заполнения. Пробел является символом по умолчанию.
Пример
Следующая программа возвращает строку после сохранения входных элементов N и замены оставшихся входным символом k с использованием функций нарезки, ljust() и len():
# input string
inputString = 'tutorialspoint'
# printing input string
print("Input string:", inputString)
# input the number of elements to be retained
input_N = 9
# input character to be replaced with rest of other elements
input_K = "#"
# Slicing till the input N index to retain the first N elements
# Applying ljust() function to add remaining characters with the replaced character
resultantStr = inputString[:input_N].ljust(len(inputString), input_K)
# printing resultant string after retaining and replacing with the input character
print("Retaining N{9} characters and replacing rest with '#':", resultantStr)
Выход
При выполнении вышеуказанная программа сгенерирует следующий вывод:
Input string: tutorialspoint
Retaining N{9} characters and replacing rest with '#': tutorials#####
Использование функции replace()
В этом методе мы собираемся использовать функцию замены Python, чтобы сохранить первый N элемент строки и заменить оставшиеся на K.
Синтаксис
string.replace(old, new, count)
Здесь функция replace() возвращает копию строки, которая заменяет все вхождения старой подстроки другой новой подстрокой.
Алгоритм (шаги)
Ниже приводится алгоритм/шаги, которые необходимо выполнить для выполнения желаемой задачи:
Создайте функцию replaceString(), которая сохраняет первые N элементов строки и заменяет оставшиеся элементы входными K, принимая входную строку в качестве аргумента.
Замените оставшиеся символы заданным символом k, используя функцию replace().
Верните результирующую строку после сохранения и замены ее входным символом.
-
Создайте переменную для хранения входной строки.
Распечатайте входную строку.
Создайте еще одну переменную для хранения входного количества N элементов, которые нужно сохранить.
Создайте еще одну переменную для хранения входного символа K, который будет заменен остальными элементами.
Вызовите определенную выше функцию replaceString(), передав ей входную строку в качестве аргумента.
Пример
Следующая программа возвращает строку после сохранения входных элементов N и замены оставшихся входным символом k с помощью функции replace():
# creating a function that retains the first N Elements of a string and
# replace the remaining with K by accepting the input string as an argument
def replaceString(inputString):
# Replacing the remaining characters with the given k character
resultantStr = inputString.replace(
inputString[input_N:], input_K*len(inputString[input_N:]))
# returning resultant string after retaining and replacing with the input character
return str(resultantStr)
inputString = 'tutorialspoint'
# printing input string
print("Input string:", inputString)
# input number of elements to be retained
input_N = 9
# input character to be replaced with rest of other elements
input_K = "#"
print("Retaining N{9} characters and replacing rest with '#':")
# calling the above defined replaceString() function by passing the
# input string as an argument to it
print(replaceString(inputString))
Выход
При выполнении вышеуказанная программа сгенерирует следующий вывод:
Input string: tutorialspoint
Retaining N{9} characters and replacing rest with '#':
tutorials#####
Заключение
Эта статья показала нам три различных способа сохранить первые N элементов строки и заменить оставшиеся K другой строкой. Мы узнали, как добавлять элементы в конец строки с помощью метода ljust(). Кроме того, мы узнали, как создать строку символов из n элементов, используя оператор * для умножения символа на n.