小编Sco*_*ttZ的帖子

Python如果那么从Dicts获取值时的Else样式

我经常讨论下面的if/else语法,我希望有些人可以给我一些关于他们认为更清楚或者是否违反任何Pythonism(我已经搜索过并且无法找到任何东西)的意见).

其中一个更好还是对/错?

value = None
if 'value' in some_dict:
  value = some_dict['value']

some_func(value=value)
Run Code Online (Sandbox Code Playgroud)

要么:

if 'value' in some_dict:
  value = some_dict['value']
else:
  value = None

some_func(value=value)
Run Code Online (Sandbox Code Playgroud)

要么:

some_func(value=some_dict.get('value', None))
Run Code Online (Sandbox Code Playgroud)

我可以看到所有的原因.

python syntax if-statement

5
推荐指数
1
解决办法
6035
查看次数

Python默认值并根据其他变量设置值.如果不是或否.

有时我有一个我想要默认的变量,如果设置了其他东西,则将其更改为其他内容.

问题是.什么是首选?设置默认值,然后在满足条件时更改它,或者根据初始检查设置条件一次,添加其他值?

代码示例.

if x:
    y = '%s-other' % x
else:
    y = 'some_default'
Run Code Online (Sandbox Code Playgroud)

另一种选择是.

y = 'some_default'
if x:
    y = '%s-other' % x
Run Code Online (Sandbox Code Playgroud)

这并不总是传递给函数的参数,所以kwargs不是我想要依赖的东西.

就个人而言,第二个似乎对我来说更清楚,但我还没有找到任何人对此的任何意见.

python syntax coding-style default-value

4
推荐指数
1
解决办法
1441
查看次数