[英]Python - Call a Function on a Condition
我想知道是否有一种简洁的方法来调用条件上的函数。
我有这个:
if list_1 != []:
some_dataframe_df = myfunction()
我想知道这是否可能在三元运算符或类似的东西中。
如果我做
(some_dataframe_df = myfunction()) if list_1 != [] else pass
它不起作用。
你的代码很好。 我建议的唯一变化是使用非空列表的固有真实性:
if list_1:
some_dataframe_df = myfunction()
如果您希望使用三元语句,则将其写为:
some_dataframe_df = myfunction() if list_1 else some_dataframe_df
但是,这既不简洁也不可读。
在三元运算符中,条件是表达式,而不是语句。 因此,您不能使用已使用的pass
和normal if
语句是正确的。
在三元运算符中使用pass
似乎是一个坏主意,特别是因为你可以内联单个语句if
。
如果您不担心列表为None
,则可以将测试缩短为仅使用列表本身的布尔值。 这样做的好处是它可以允许任何正常的序列,而不仅仅是列表。
总而言之,你可以这样做:
if list_1: some_dataframe_df = myfunction()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.