How to check if array is not empty?
本问题已经有最佳答案,请猛点这里访问。
如何检查数组是否不为空?我这样做了:
1 | if not self.table[5] is None: |
这条路对吗?
这个问题没有提到麻木。如果"按数组"的意思是"列表",那么如果将列表视为布尔值,那么如果列表中包含项,它将生成"真";如果列表为空,它将生成"假"。
1 2 3 4 5 6 7 | l = [] if l: print"list has items" if not l: print"list is empty" |
使用
1 2 | if a.size: print('array is not empty') |
(在python中,像
1 2 | if self.table: print 'It is not empty' |
也很好
Python 2:
1 2 | if len(self.table) > 0: #Do code here |
Python 3:
1 2 | if(len(self.table) > 0): #Do code here |
也可以使用
1 2 3 4 | if self.table: #Execute if self.table is not empty else: #Execute if self.table is empty |
查看列表是否不为空。
由于许多语言都有
我还不能评论,但应该注意的是,如果使用多个元素的numpy数组,这将失败:
1 2 3 4 5 | if l: print"list has items" elif not l: print"list is empty" |
错误将是:
1 | ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all() |
一种简单的方法是使用布尔表达式:
1 2 3 4 | if not self.table[5]: print('list is empty') else: print('list is not empty') |
或者可以使用另一个布尔表达式:
1 2 3 4 | if self.table[5]==[]: print('list is empty') else: print('list is not empty') |
如果您谈论的是python的实际
1 2 3 4 5 6 7 8 9 10 | from array import array an_array = array('i') # an array of ints if an_array: print("this won't be printed") an_array.append(3) if an_array: print("this will be printed") |