Python程序:删除字符串中K长度的单词

Python程序:删除字符串中K长度的单词

在这篇文章中,我们将学习一个Python程序,用于删除字符串中K长度的单词。

使用的方法

以下是完成此任务的各种方法-

  • 使用split(),join(),len()和列表推导式

  • 使用filter(),lambda(),split()和len()函数

  • 使用split(),join(),remove()和len()函数

例子

假设我们已经输入一个 输入字符串 和K长度。现在,我们将使用上述方法从输入字符串中删除所有给定的K长度单词。

输入

inputString = "hello tutorialspoint python codes"
k_length = 5

输出

删除5长度单词后的结果字符串: tutorialspoint python

在此示例中,给定的K长度为 5 ,因此从输入字符串中删除长度为5的所有单词,例如 hello、codes ,并打印出结果字符串。

方法1:使用split(),join(),len()和列表推导式

列表推导式

当您希望基于现有列表的值构建新列表时,列表推导式提供了更短/简洁的语法。

join() - join()是Python中的一个字符串函数,用于连接由字符串分隔符分隔的序列元素。此函数将序列元素连接起来以转换为字符串。

算法(步骤)

以下是执行所需任务的算法/步骤:

  • 创建一个变量来存储 输入 字符串并打印所给定的字符串。

  • 创建另一个变量来存储 K长度

  • 使用 split()函数 (将字符串拆分为列表。我们可以定义分隔符以定义默认分隔符是任何空格)将输入字符串拆分为单词列表

  • 穿过单词列表并检查当前元素的长度是否不等于输入K长度,并将其存储在列表中。

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

  • 删除 输入字符串 中的所有给定K长度单词后,打印结果字符串。

例子

以下程序使用split(),join()函数和列表推导式从 输入字符串 中删除所有 K长度 单词,并返回一个字符串-

# 输入字符串
inputString = "hello tutorialspoint python codes"

# 打印输入字符串
print("输入字符串:", inputString)

# 输入K长度值
k_length = 5

# 将输入字符串拆分为单词列表
wordsList = inputString.split()

# 遍历单词列表并检查当前字符串的长度是否等于输入K长度,并将其存储在列表中
resultList = [element for element in wordsList if len(element) != k_length]

# 使用join()函数将上面的列表连接成一个字符串以将其转换为字符串
resultString = ' '.join(resultList)

# 删除所有K长度单词后打印结果字符串
print("删除5长度单词后的结果字符串:\n", resultString)

输出

在执行上述程序时,将生成以下输出 –

输入字符串: hello tutorialspoint python codes
删除5长度单词后的结果字符串: tutorialspoint python

方法2:使用filter(),lambda(),split()和len()函数

filter()函数 - 使用确定序列中每个元素是真还是假的函数过滤指定的序列。

Lambda Function

Lambda函数,也被称为“匿名函数”,与普通Python函数相同,只是可以 无需名称 定义。使用 def 关键字定义常规函数,而使用 lambda 关键字定义匿名函数。但是,它们仅限于单个表达式。与常规函数一样,它们可以接受多个参数。

语法

lambda arguments: expression

示例

以下程序使用filter()、lambda()、split()和len()函数从输入字符串中删除所有输入k长度单词,并返回字符串 –

# input string
inputString = "hello tutorialspoint python codes"

# printing the input string
print("输入字符串:", inputString)

# input k length value
k_length = 5

# 将输入字符串分割成单词列表
wordsList = inputString.split()

# 遍历给定单词列表并过滤列表元素
# 如果元素的长度不等于k,则使用lambda函数。
resultList = filter(lambda element: len(element) != k_length, wordsList)

# 将filter对象转换为列表
resultList = list(resultList)

# 将上述列表连接到字符串以将其转换为字符串
resultString = ' '.join(resultList)

# 在删除k长度单词后打印结果字符串
print("删除5个长度单词后的结果字符串:\n", resultString)

输出

执行上述程序将生成以下输出 –

输入字符串:hello tutorialspoint python codes
删除5个长度单词后的结果字符串:
tutorialspoint python

方法3:使用split(),join(),remove()和len()函数

split() −将字符串拆分为列表。我们可以定义分隔符;默认分隔符是任何空格。

remove()方法 − 删除具有给定值的元素的第一个出现。

语法

list.remove(obj)

示例

以下程序使用split()、join()、remove()和len()函数从输入字符串中删除所有输入k长度单词,并返回字符串 –

# input string
inputString = "hello tutorialspoint python codes"

# 打印输入字符串
print("输入字符串:", inputString)

# input k length value
k_length = 5

# 将输入字符串分割成单词列表
wordsList = inputString.split()

# 复制单词列表并在其中旅行
for element in wordsList.copy():

   # 检查当前长度是否等于输入的k长度
   if len(element) == k_length:

      # 如果条件为真,则删除该元素
      wordsList.remove(element)

# 将单词列表连接到字符串以转换为字符串
resultString = ' '.join(wordsList)

# 在删除k长度单词后打印结果字符串
print("删除5个长度单词后的结果字符串:\n", resultString)

输出

执行上述程序将生成以下输出 –

输入字符串:hello tutorialspoint python codes
删除5个长度单词后的结果字符串:
tutorialspoint python

结论

在本文中,我们学习了如何使用三种不同的方法从给定的单词列表中删除k长度条款。使用lambda和filter函数,我们还学习了如何根据指定条件过滤列表的元素。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程