Python程序:移除列表中第n次出现的指定单词(单词可能重复)


当需要从一个单词列表中移除特定出现次数的指定单词时(单词可能重复),可以定义一个方法,该方法迭代列表,并将计数器加1。如果计数器与指定的出现次数匹配,则可以删除列表中的特定元素。

下面是一个演示:

示例

 在线演示

def remove_word(my_list, my_word, N):
   count = 0

   for i in range(0, len(my_list)):
      if (my_list[i] == my_word):
      count = count + 1

      if(count == N):
         del(my_list[i])
         return True

   return False

my_list = ['Harry', 'Jane', 'Will', 'Rob', 'Harry']
print("The list is :")
print(my_list)
my_word = 'Harry'
N = 2

flag_val = remove_word(my_list, my_word, N)

if (flag_val == True):
   print("The updated list is: ", my_list)
else:
   print("Item hasn't been updated")

输出

The list is :
['Harry', 'Jane', 'Will', 'Rob', 'Harry']
The updated list is: ['Harry', 'Jane', 'Will', 'Rob']

解释

  • 定义了一个名为“remove_word”的方法,该方法将列表、一个单词和“n”的值作为参数。

  • 将“count”值初始化为0。

  • 迭代列表,并检查列表中的元素是否与指定单词匹配。

  • 如果匹配,则将count变量加1。

  • 如果此count变量等于值“n”,则从列表中删除该元素。

  • 使用“del”关键字。

  • 定义一个字符串列表并在控制台中显示。

  • 通过传递相关参数来调用该方法。

  • 在控制台中显示输出。

更新于:2021年4月14日

1K+ 次浏览

开启你的职业生涯

完成课程获得认证

开始学习
广告