Check if any String is empty in list,First Non-Empty String in list

预备知识:any()
Any(x)判断x对象是否为空对象,如果都为空、0、false,则返回false,如果不都为空、0、false,则返回true
请看https://docs.python.org/上的定义:
any(iterable)
如果 iterable 的任一元素为真则返回 True。 如果所有迭代器为空,返回 False。 等价于:

def any(iterable):
    for element in iterable:
        if element:
            return True
    return False

so :
a =[False, False, False]

>>> y = any(a)
>>> y
False

so :

>>> any((0,False,''))
False
>>> any([])
False

so 只要有一个不是false,那就是true :

>>> a =[False, True , False,False,False,False]
>>> any(a)
True
>>> 

so :

>>> b = [0,0,0,0,0,0,'']
>>> any(b)
False

注意,'0’不是空对象哦。

>>> b =[0,0,0,'0',0,0,'']
>>> any(b)
True
>>> 

预备知识,str
str函数是Python的内置函数,它将参数转换成字符串类型,即人适合阅读的形式。

>>> a_list = [12, '-23.1', 'Python']
>>> str(a_list) #列表转换为字符串
"[12, '-23.1', 'Python']"
>>> 

好了,开始主菜:

Check if any String is empty in list

# initialize list  
test_list = ['gfg', 'is', 'best', '', 'for', 'geeks'] 
  
# printing original list  
print("The original list : " + str(test_list)) 
  
# Check if any String is empty in list 
# using len() + any() 
res = any(len(ele) == 0 for ele in test_list) 
  
# printing result 
print("Is any string empty in list? : " + str(res))

Output :

The original list : ['gfg', 'is', 'best', '', 'for', 'geeks']
Is any string empty in list? : True

如何将一个列表中的空值都剔除呢,很简单:

>>> xlist = ['','','a','b','c','','d']
>>> x = [sub for sub in xlist if sub]
>>> x
['a', 'b', 'c', 'd']
>>> 

First Non-Empty String in list

# initializing list 
test_list = ["", "", "Akshat", "Nikhil"] 
  
# printing original list  
print("The original list : " + str(test_list)) 
  
# using next() + list comprehension 
# First Non-Empty String in list 
res = next(sub for sub in test_list if sub) 
  
# printing result 
print("The first non empty string is : " + str(res)) 

Splitting list on empty string

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值