Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python:Inline是否要打印非空字符串?_Python_If Statement - Fatal编程技术网

Python:Inline是否要打印非空字符串?

Python:Inline是否要打印非空字符串?,python,if-statement,Python,If Statement,我正在尝试打印列表中的非空字符串。我似乎无法让下面的工作,我做错了什么 print item in mylist if item is not "" 以下语法无效:如果项目不是“”,则在mylist中打印项目。 您或许可以使用列表理解来实现您想要的: >>> mylist = ["foo","bar","","baz"] >>> print [item for item in mylist if item] ['foo', 'bar', 'baz'] 您可

我正在尝试打印列表中的非空字符串。我似乎无法让下面的工作,我做错了什么

print item in mylist if item is not ""

以下语法无效:
如果项目不是“”,则在mylist中打印项目。

您或许可以使用列表理解来实现您想要的:

>>> mylist = ["foo","bar","","baz"]
>>> print [item for item in mylist if item]
['foo', 'bar', 'baz']

您可以创建一个生成器来获取列表中非空的项

nonempties = (item for item in mylist if item)
然后循环并打印或将它们连接成字符串

print ' '.join(nonempties)
内置的
filter()
非常适合这个功能,只需传递
None
而不是函数:

>>> filter(None, ['Abc', '', 'def', None, 'ghi', False, 'jkl'])
['Abc', 'def', 'ghi', 'jkl']

详细信息位于

它的作用是什么?你想让它做什么?如果您在mylist中执行了
a=项,如果项不是“”
您希望
a
是什么?您将如何向该语句添加
()
,以澄清它?在python3中,也可以使用
[打印mylist中的项目(如果项目)]