繁体   English   中英

Python - 在条件上调用函数

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM