所以,如果我有这样的代码:
a = ["a", "b", "c", "null"]
print a
由于某种原因,"null"
的数量在输出中变化很大。
如何在打印前删除所有与"null"
字符串匹配的数组元素?
答案 0 :(得分:2)
过滤列表的一种简单方法是使用列表解析:
print([x for x in a if x != "null"])
答案 1 :(得分:2)
只需遍历您的列表即可打印出不等于" null"
的所有内容a = ["a", "b", "c", "null"]
for data in a:
if data != "null":
print(data)
如果您希望过滤掉您不希望在数据结构中使用的数据,那么,最简单的方法是在列表解析中执行此操作,这将删除不需要的" null& #34;
res = [data for data in a if data != "null"]
答案 2 :(得分:0)
@ m1ksu,我刚看到你上面要求的功能:见下文
a = ["a", "b", "c", "null"]
def remove_null(self):
return [x for x in self if x != "null"]
asd = remove_null(a)
print asd
输出
['a', 'b', 'c']
答案 3 :(得分:0)
我得到的印象是,您希望将列表转换为带有函数的字符串,并在单独的行上显示每个数据元素,而不包含null。所以,这就是我的建议:
# remove null and convert list to string with function
# and display results on separate lines
a = ["a", "b", "c", "null"]
def str(A):
a = [data for data in A if data != "null"]
aSTR = '\n'.join(a)
return aSTR
print str(a)
运行代码here