簡體   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