📌  相关文章
📜  Python – 第 K 个有效字符串

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

Python – 第 K 个有效字符串

有时在处理数据科学时,我们需要处理大量数据,因此我们可能需要速记来执行某些任务。我们在预处理阶段处理 Null 值,因此有时需要检查第 K 个有效元素。让我们讨论一些可以找到第 K 个非空字符串的方法。

方法 #1:使用next() + 列表推导
下一个函数返回迭代器,因此它比传统的列表推导更有效,逻辑部分使用检查最后一个 None 值的列表推导来处理。

# Python3 code to demonstrate
# Kth Valid String
# using next() + list comprehension
  
# initializing list
test_list = ["", "", "Akshat", "Nikhil"]
  
# printing original list 
print("The original list : " + str(test_list))
  
# initializing K 
K = 2
  
# using next() + list comprehension
# Kth Valid String
test_list = iter(test_list)
for idx in range(0, K):
    res = next(sub for sub in test_list if sub)
  
# printing result
print("The Kth non empty string is : " + str(res))
输出 :
The original list : ['', '', 'Akshat', 'Nikhil']
The Kth non empty string is : Nikhil

方法 #2:使用filter()
filter函数可用于查找非空字符串,并返回第 K 个索引以获取其中的第一个字符串。仅适用于Python 2。

# Python code to demonstrate
# Kth Valid String
# using filter()
  
# initializing list
test_list = ["", "", "Akshat", "Nikhil"]
  
# printing original list 
print("The original list : " + str(test_list))
  
# initializing K 
K = 2
  
# using filter()
# Kth Valid String
res = filter(None, test_list)[K - 1]
  
# printing result
print("The Kth non empty string is : " + str(res))
输出 :
The original list : ['', '', 'Akshat', 'Nikhil']
The Kth non empty string is : Nikhil