2017-07-25 6 views
1

私はいくつかのフィールドを持つ結果セットを持っているとしましょう。現在、これらのフィールドの1つが 'NULL'またはPython言語で提供されていません。今私は特定の単語の例 'UNKNOWN'でフィールド内のNONE全体を置き換えるメソッドを作成する必要があります。ここに私の方法です。今残念ながら、私のアプローチは動作しませんテーブルからヌル値を読み取るPython 3.X

z= None 
definegender(z) 
print('{}'.format(z)) 

をテスト

def definegender(x): 
    if x is not None: 
     return x 
    else: 
     x = 'unknown' 
     return x 

、君たちは私がこの検証を作成するための最良の方法をお知らせすることができますしてください。ありがとう

+0

z = None z =definegender(z) print('{}'.format(z))

さらにあなたがdefinegender機能で三項演算子を使用してコードを短くすることができますがPython。私は名前の前のなしでのz = definegender(z)をしようとすると、 –

答えて

2

あなたがしようとしているのは参照によって割り当てられます。可能なC、C++、C#などの言語がありますか? JavaとPythonではそうではありません。状態を変更することができます(たとえば、リストを渡す場合は要素を更新できますが、別のリストを設定することはできません)。

あなたはしかし、 代入演算子使用することができます

:あなたは、参照により割り当てることはできません

def definegender(x): 
    return x if x is not None else 'unknown' 
+0

こんにちはバディ、私はこのエラーNameErrorを得た:名「z」は –

+0

@AndresAngelに定義されていません。もちろん、あなたが最初z'が初期化されている 'ことを確認する必要があり、同様にあなた自身のコード断片で。 –

+0

さて私は、z =なしとして初期化されますが、それは「不明」:( –

関連する問題