📌  相关文章
📜  Python|提取字符串列表中的第 N 个单词

📅  最后修改于: 2022-05-13 01:54:42.067000             🧑  作者: Mango

Python|提取字符串列表中的第 N 个单词

有时,在使用Python列表时,我们可能会遇到需要执行提取列表中每个字符串的第 N 个单词的任务的问题。这可以在网络开发领域有应用。让我们讨论可以执行此任务的某些方式。

方法 #1:使用列表理解 + split()
上述方法的组合可以用来解决这个问题。在此,我们执行使用拆分获取第 N 个单词并使用列表理解重新创建列表的任务。

# Python3 code to demonstrate working of 
# Extract Nth words in Strings List
# Using list comprehension + split()
      
# initializing list
test_list = ['Gfg best for', 'All geeks', 'It is for', 'all CS professionals']
  
# printing original list
print("The original list is : " + str(test_list))
  
# initializing N 
N = 2
  
# Extract Nth words in Strings List
# Using list comprehension + split()
res = [sub.split()[N - 1] for sub in test_list if len(sub.split()) > 1]
  
# printing result 
print("The Nth words in list are : " + str(res)) 
输出 :
The original list is : ['Gfg best for', 'All geeks', 'It is for', 'all CS professionals']
The Nth words in list are : ['best', 'geeks', 'is', 'CS']

方法 #2:使用列表理解 + enumerate() + split()
上述功能的组合可用于执行此任务。在此,我们使用 enumerate 来检查第 N 个单词而不是 split()。

# Python3 code to demonstrate working of 
# Extract Nth words in Strings List
# Using list comprehension + enumerate() + split()
      
# initializing list
test_list = ['Gfg best for', 'All geeks', 'It is for', 'all CS professionals']
  
# printing original list
print("The original list is : " + str(test_list))
  
# initializing N 
N = 2
  
# Extract Nth words in Strings List
# Using list comprehension + enumerate() + split()
res = [ele for sub in test_list for idx, ele in enumerate(sub.split()) if idx == (N - 1)]
  
# printing result 
print("The Nth words in list are : " + str(res)) 
输出 :
The original list is : ['Gfg best for', 'All geeks', 'It is for', 'all CS professionals']
The Nth words in list are : ['best', 'geeks', 'is', 'CS']