#45176: python 邪門寫法


sam851015@gmail.com (多挖鼻孔有益身心健康)

學校 : 臺中市立惠文高級中學
編號 : 277705
來源 : [123.192.228.253]
最後登入時間 :
2025-09-21 22:24:46

太邪門了,自己寫出來都想笑

題目不難,這題主要考如何處理陣列中不存在的元素

單純想給大家看我寫出來的怪東西,一樣能 AC 

 

alpha = list(input())
target = input()

result = []
for item in target:
  try:
      idx = alpha.index(item)
  except ValueError:
      idx = None
  else:
      alpha[idx] = None
  finally:
        result.append(str(idx + 1) if idx is not None else 'X')

print(*result)

 

能用 python 做到這題的...應該多少都會用 try...except 處理 EOF,但還是解釋一下關於這東西的完整語法

try:
  # 有可能發生錯誤的地方

except (你指定的錯誤放這, 例如 EOFError):
  # 如果真的發生對應的錯誤,就做這裡的事情

else:
  # 如果沒有發生對應的錯誤,就做這裡的事情

finally:
    # 無論如何都一定要做的事情放這

 

 

 

#45251: Re: python 邪門寫法


cges30901 (cges30901)

學校 : 不指定學校
編號 : 30877
來源 : [39.12.66.21]
最後登入時間 :
2025-04-20 17:19:22

太邪門了,自己寫出來都想笑

題目不難,這題主要考如何處理陣列中不存在的元素

單純想給大家看我寫出來的怪東西,一樣能 AC 

 

alpha = list(input())
target = input()

result = []
for item in target:
  try:
      idx = alpha.index(item)
  except ValueError:
      idx = None
  else:
      alpha[idx] = None
  finally:
        result.append(str(idx + 1) if idx is not None else 'X')

print(*result)

 

能用 python 做到這題的...應該多少都會用 try...except 處理 EOF,但還是解釋一下關於這東西的完整語法

try:
  # 有可能發生錯誤的地方

except (你指定的錯誤放這, 例如 EOFError):
  # 如果真的發生對應的錯誤,就做這裡的事情

else:
  # 如果沒有發生對應的錯誤,就做這裡的事情

finally:
    # 無論如何都一定要做的事情放這

 

 

 


個人很少用到else和finally,如果是我會寫成這樣:

    try:
        idx = alpha.index(item)
        alpha[idx] = None
    except ValueError:
        idx = None
    result.append(str(idx + 1) if idx is not None else 'X')

有些特定的情況必須用到else和finally,但這個地方好像其實不需要,當然每個人習慣不同,原本的寫法也沒什麼問題就是了