Python 将句子中的一个单词替换为星号

Python 将句子中的一个单词替换为星号

在写作或印刷中使用符号*(星号)作为引用标记,表示某些字母或单词已被省略,表示可能但未经证实的语言形式,或用于其他任意目的。

在本文中,我们将讨论用Python替换句子中的一个单词为星号的不同方法。

输入-输出场景

以下是将句子中的一个单词替换为星号的输入和输出场景示例−

Input: Welcome to the TutorialsPoint family.
Output: Welcome to the TutorialsPoint ******

可以看到,在上面的情景中,句子中的词“family”被星号替换了。

使用replace()方法

在给定的字符串中,replace()方法会查找作为第一个参数传递的字符串,并将其替换为第二个参数。

示例

以下是使用replace()方法在句子中将一个词替换为星号的示例:

def Asterisk(sentence, word):
# Using the replace function to find and replace the word with same no. of asterisks as the word's length.
   return sentence.replace(word, "*" * len(word))
sentence = "Go feed all the ducks present in the lake"
print ('The sentence is :', sentence)
censored_sentence = Asterisk(sentence, "ducks")
print('Replacement with asterisks is as shown :',censored_sentence)

输出

下面是以上代码的输出结果 –

The sentence is : Go feed all the ducks present in the lake
Replacement with asterisks is as shown : Go feed all the ***** present in the lake

使用静态输入的for循环

以下是使用静态输入的for循环来替换句子中的单词为星号的方法:

  • 将字符串作为静态输入提供并保存在一个变量中。

  • 在提供为静态输入之后,将可替换的单词放入另一个变量中。

  • 使用split()函数从给定的字符串创建一个单词列表,并将其保存在一个名为“word_list”的新变量中。

  • 使用len()函数将星号符号乘以提供的输入单词的长度,然后将结果保存在一个名为“replaced_word”的新变量中。

  • 使用for循环遍历刚刚得到的单词列表。

  • 使用if条件语句判断迭代器索引位置的单词是否等于输入的单词。

  • 如果条件成立,则将迭代器索引位置的单词替换为“replaced_word”。

  • 使用join()函数将上面的单词列表转换为字符串。

  • 打印获取的字符串以替换给定输入句子中的一个单词为星号。

  • 程序结束。

示例

以下是使用静态输入的for循环来替换句子中的单词为星号的示例:

string = "Replacing the word in the sentence with asterisks for that sentence"
# word to be replaced
word = "sentence"
# splitting the string into list and storing it in another variable
word_list = string.split()
# Multiplying the asterisk symbol with length of the given word
replaced_word = '*' * len(word)
for iterator in range(len(word_list)):
# checking if the word at the iterator index given is equal
   if word_list[iterator] == word:
      word_list[iterator] = replaced_word
# Converting the word list to string
final_string = ' '.join(word_list)
print("The sentence is : ", string)
print("Replacement with asterisks is as shown : ",final_string)

输出

以下是上述代码的输出结果 −

The sentence is :  Replacing the word in the sentence with asterisks for that sentence
Replacement with asterisks is as shown :  Replacing the word in the ******** with asterisks for that ********

使用带用户输入的循环

以下是使用带有用户输入的循环来在句子中替换单词为星号的方法:

  • 使用input()函数接收用户输入的字符串并将其存储在一个变量中。

  • 使用input()函数接收可替换单词并将其存储在另一个变量中。

  • 使用split()方法从给定的字符串创建一个单词列表,并将其保存在一个名为”word_list”的新变量中。

  • 使用len()函数将星号符号乘以提供的输入单词的长度,然后将结果存储在一个名为”replaced_word”的新变量中。

  • 使用for循环遍历刚刚获取的单词列表。

  • 利用if条件语句确定迭代器索引处的单词是否等于输入单词。

  • 如果条件为真,则用”replaced_word”替换迭代器索引处的单词。

  • 使用join()函数将上述单词列表转换为字符串。

  • 打印获取的字符串,以将输入句子中的一个单词替换为星号。

  • 程序退出。

示例

以下是使用带有用户输入的循环来在句子中替换单词为星号的示例:

string = input("Enter the sentence = ")
word = input("Enter the word to be replaced = ")
word_list = string.split()
replaced_word = '*' * len(word)
for itr in range(len(word_list)):
   if word_list[itr] == word:
      word_list[itr] = replaced_word
final_string = ' '.join(word_list)
print("The sentence is : ", string)
print("Replacement with asterisks is as shown : ",final_string)

输出

以下是上述代码的输出结果-

Enter the sentence = Replacing the word in the sentence with asterisks for that sentence
Enter the word to be replaced = sentence
The sentence is : Replacing the word in the sentence with asterisks for that sentence
Replacement with asterisks is as shown : Replacing the word in the ******** with asterisks for that ********

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程