私は次の問題を提起されました:
関数 postalValidate(S) を定義します。この関数は、最初に S が有効な郵便番号を表しているかどうかをチェックします。まず、すべてのスペースを削除します。残りは L#L#L# の形式である必要があります。ここで、L は文字 (小文字または大文字) であり、# は数字です。S が有効な郵便番号でない場合は、ブール値の False を返します。S が有効な場合は、同じ郵便番号を L#L#L# というナイス形式で返します。ここで、各 L は大文字です。
これが私のコードです:
def postalValidate(S):
S = S.replace(" ", "")
for c in range(0, 4, 2):
if S[c].isalpha() == True:
x = True
for c2 in range(1, 5, 2):
if S[c2].isdigit() == True:
y = True
if x == True and y == True:
return S.upper()
else:
return False
問題は、次のエラーが発生することです。
UnboundLocalError: 代入前にローカル変数 'y' が参照されました
これを手伝っていただければ幸いです。