Python 程序保留字符串的前 N 个元素并用 K 替换剩余元素
在本文中,我们将学习如何使用内部 Python 函数(如 len()、slicing()、replace()、ljust())保留字符串的前 N 个元素并用 k 替换剩余元素。只需将字母括在引号中,即可轻松创建 Python 字符串。Python 以相同的方式处理单引号和双引号。为变量赋值并创建字符串非常简单。
示例
假设我们已获取输入字符串 N、K 个值。我们现在将保留输入字符串的前 N 个字符,并使用上述方法将其替换为给定的 K 个字符。
输入
inputString = 'tutorialspoint' input_N = 9 input_K = "#"
输出
保留 N{9} 个字符并用 '#' 替换其余字符:tutorials#####
在上面的例子中,保留输入字符串的前 N(9) 个字符的 tutorials,其余字符用输入 K 替换,即 # 符号。
使用 * 运算符、切片和 len()函数
在此方法中,我们将使用 * 运算符和内部函数(如切片和 len())来保留字符串的前 N 个元素,然后用 K 替换其余元素。这里,len() 函数是 len() 方法返回的对象中的项目数。
算法(步骤)
以下是执行所需任务所要遵循的算法/步骤 -。
创建一个变量来存储输入字符串。
打印输入字符串。
创建另一个变量来存储要保留的输入 N个元素。
创建另一个变量来存储要用其余元素替换的输入字符 K。
切分字符串的前 N 个字符以保留前 N 个元素。
将给定的字符乘以剩余的元素数。
使用 + 运算符连接上述两个字符串。
保留输入 N 个元素并用输入 k 替换剩余元素后打印结果字符串字符。
示例
以下程序在保留输入的 N 个元素并使用 * 运算符、切片和 len() 函数将其余元素替换为输入的 k 个字符后返回一个字符串 –
# 输入字符串 inputString = 'tutorialspoint' # 打印输入字符串 print("输入字符串:", inputString) # 输入要保留的元素数 input_N = 9 # 输入要用其他元素替换的字符 input_K = "#" # 切片到输入 N 索引以保留前 N 个元素 # 将剩余元素数与替换的字符相乘 resultantStr = inputString[:input_N] + input_K * (len(inputString) - input_N) # 保留并替换为输入字符后打印结果字符串 print("保留N{9} 个字符,其余字符用"#"替换:"resultantStr)
输出
执行时,上述程序将生成以下输出 –
输入字符串:tutorialspoint 保留 N{9} 个字符并用 '#' 替换其余字符:tutorials#####
使用切片、ljust() 和 len() 函数
在此方法中,我们将使用内部 Python 函数(如切片、ljust() 和 len())执行给定任务。
语法
string.ljust(length, character)
此处,ljust() 函数用于将字符串左对齐,并将给定字符作为填充字符。空格是默认字符。
示例
以下程序在保留输入的 N 个元素并使用切片、ljust() 和 len() 函数将其余元素替换为输入的 k 个字符后返回一个字符串 –
# 输入字符串 inputString = 'tutorialspoint' # 打印输入字符串 print("输入字符串:", inputString) # 输入要保留的元素数 input_N = 9 # 输入要用其他元素替换的字符 input_K = "#" # 切片到输入 N 索引以保留前 N 个元素 # 应用 ljust() 函数将剩余字符与替换的字符相加 resultantStr = inputString[:input_N].ljust(len(inputString), input_K) # 保留并替换为输入字符后打印结果字符串 print("保留 N{9} 个字符并将其余部分替换为'#':",resultantStr)
输出
执行时,上述程序将生成以下输出 –
输入字符串:tutorialspoint 保留 N{9} 个字符并将其余部分替换为'#':tutorials#####
使用 replace() 函数
在此方法中,我们将使用 python 的 replace 函数保留字符串的前 N 个元素,并将其余部分替换为 K。
语法
string.replace(old, new, count)
此处 replace() 函数 返回字符串的副本,该副本用另一个新子字符串替换所有出现的旧子字符串。
算法(步骤)
以下是执行所需任务需要遵循的算法/步骤 –
创建函数 replaceString(),该函数保留字符串的前 N 个元素,并通过接受输入字符串作为参数,将其余元素替换为输入 K。
使用 replace() 函数将剩余字符替换为给定的 k 个字符。
保留并用输入字符替换后返回结果字符串。
创建一个变量来存储输入字符串。
打印输入字符串。
创建另一个变量来存储要保留的输入 N个元素。
创建另一个变量来存储要用其余元素替换的输入字符 K。
调用上面定义的replaceString() 函数,将输入字符串作为参数传递给它。
示例
以下程序在保留输入的 N 个元素并使用 replace() 函数将其余元素替换为输入的 k 个字符后返回一个字符串 –
# 创建一个函数,该函数保留字符串的前 N 个元素,并 # 通过接受输入字符串作为参数将其余元素替换为 K def replaceString(inputString): # 用给定的 k 个字符替换剩余的字符 resultantStr = inputString.replace( inputString[input_N:], input_K*len(inputString[input_N:])) # 保留并替换输入字符后返回结果字符串 return str(resultantStr) inputString = 'tutorialspoint' # 打印输入字符串 print("输入字符串:", inputString) # 输入要保留的元素数 input_N = 9 # 输入要用其他元素替换的字符 input_K = "#" print("保留 N{9} 个字符并用 '#' 替换其余字符:") # 通过将输入字符串作为参数传递给上面定义的 replaceString() 函数来调用它 print(replaceString(inputString))
输出
执行时,上述程序将生成以下输出 –
输入字符串:tutorialspoint 保留 N{9} 个字符并用 '#' 替换其余字符: tutorials#####
结论
本文向我们展示了三种不同的方法来保留字符串的前 N 个元素,并用另一个字符串替换剩余的 K 个元素。我们学习了如何使用 ljust() 方法将元素添加到字符串末尾。此外,我们还学习了如何使用 * 运算符将字符乘以 n 来创建包含 n 个元素的字符串。