我有一個包含字符串(從XML提要中提取)的變量。字符串值可以是整數,日期或字符串類型。我需要將它從字符串轉換爲給定的數據類型。我這樣做,但它有點難看,所以我問是否有更好的技術。如果我想檢查更多類型,我會以非常嵌套的嘗試結束 - 除了塊。字符串檢查多種類型
def normalize_availability(self, value):
"""
Normalize the availability date.
"""
try:
val = int(value)
except ValueError:
try:
val = datetime.datetime.strptime(value, '%Y-%m-%d')
except (ValueError, TypeError):
# Here could be another try - except block if more types needed
val = value
謝謝!
又該這個函數返回?它只是檢查它是一個int,日期或str,並返回True/False? – Nitzle
返回值並不重要,重點在於是否有更好的解決方案將字符串轉換爲除嵌套嘗試之外的特定數據類型 - 多次除外。如果我要檢查4個數據類型,我將有3個級別的try-except塊。 – Bruce