0
3つの変数の値を返すためのPythonの最良の方法は、nullではありません。 変数の1つだけはいつでもnullになりません。nullでない変数の戻り値
これまでのところ、私はさらに
if kwargs.get('F06_yes_1'):
context1.update({'F06_1': kwargs['F06_yes_1']})
elif kwargs.get('F06_no_1'):
context1.update({'F06_1': kwargs['F06_no_1']})
else:
context1.update({'F06_1': kwargs['F06_na_1']})
この非効率的なコードを使用して、(あなたのコメントに基づいて)の交換を行うために、あなたが試すことができています:
以下に答えるために、さらにcontext1.update({
'F06_1': ('yes' if kwargs['F06_yes_1'] else None)
or ('no' if kwargs['F06_no_1'] else None)
or ('n/a' if kwargs['F06_na_1'] else None)
})
F06_yes_1の値がnullで、F06_no_1の値が「オン」の場合、次のエラーが発生します。
Traceback (most recent call last):
File "C:\Python27\lib\site-packages\cherrypy\_cprequest.py", line 670, in respond
response.body = self.handler()
File "C:\Python27\lib\site-packages\cherrypy\lib\encoding.py", line 217, in __call__
self.body = self.oldhandler(*args, **kwargs)
File "C:\Python27\lib\site-packages\cherrypy\_cpdispatch.py", line 60, in __call__
return self.callable(*self.args, **self.kwargs)
File "example.py", line 872, in RPC_submit
'F06_1': ('yes' if kwargs['F06_yes_1'] else None)
KeyError: 'F06_yes_1'
返された値がオンであるとしましょう。効率的にそれを変更する方法はありません。はい – Ossama
または最高、拳の引数の値が返された場合、どうすれば変更できますか? NAでない場合の引数、onからNAへの3番目の引数については、どのようにしてOnからNoに変更できますか? – Ossama
@Ossamaは私の更新された投稿を参照してください。 –