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