gpt4 book ai didi

python - Python 中条件运算符的推荐编码风格是什么?

转载 作者:行者123 更新时间:2023-11-30 23:07:56 24 4
gpt4 key购买 nike

以下行是我的代码的一部分。我可能是错的,但它对我来说似乎足够Pythonic了。然而乍一看并不清楚它到底意味着什么。是否有更好的代码布局使其更清晰? _idName 是一个函数或一个 DataFrame

while  id1!="cancel" and ((id1 not in _idName.id.values) 
if isinstance(_idName,_pd.DataFrame) else (_idName(id1) is None)):
do something with the variables evaluated in the condition

最佳答案

代码的布局确实让人不清楚发生了什么。

至少,我倾向于在二元运算符 andor 之后换行,按照 the style guide ,而不是在单个条件的中间。

如果可能的话,我还会尝试将三元数保留在一行上;但在这种情况下,最终会很长,所以可能不是一个选择。我认为三元中的 bool 运算符在行的开头更有意义,尽管我找不到这方面的引用(除了 "Martijn likes it too" )。

另一个可读的示例:

while (id1 != "cancel" and 
((id1 not in _idName.id.values) if isinstance(_idName, _pd.DataFrame)
else (_idName(id1) is None))):

或者也许:

while (id1 != "cancel" and 
((id1 not in _idName.id.values)
if isinstance(_idName,_pd.DataFrame)
else (_idName(id1) is None)):

关于python - Python 中条件运算符的推荐编码风格是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31987906/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com