首頁 > 後端開發 > Python教學 > 如何在Python中根據字串輸入存取預定義清單?

如何在Python中根據字串輸入存取預定義清單?

Susan Sarandon
發布: 2024-12-18 20:42:17
原創
460 人瀏覽過

How Can I Access a Predefined List Based on a String Input in Python?

透過字串名稱存取變數

問題:

您需要一個傳回基於字元串輸入的預定義清單。例如,給定字串“audio”,該函數應輸出清單 ['mp3', 'wav']。

使用字典的最簡單解決方案:

一個標準的字典可以輕鬆滿足這個要求。

get_ext = {'text': ['txt', 'doc'],
           'audio': ['mp3', 'wav'],
           'video': ['mp4', 'mkv']
}

get_ext['video']  # Returns ['mp4', 'mkv']
登入後複製

使用函數:

對於更高級的應用程序,可能首選使用函數。

分配字典的 Get 方法:

get_ext = get_ext.get

get_ext('video')  # Returns ['mp4', 'mkv']
登入後複製

將字典包裝在 a中功能:

def get_ext(file_type):
    types = {'text': ['txt', 'doc'],
             'audio': ['mp3', 'wav'],
             'video': ['mp4', 'mkv']
    }

    return types.get(file_type, [])
登入後複製

建立可擴充性的自訂類別:

class get_ext(object):
    def __init__(self):
        self.types = {'text': ['txt', 'doc'],
                      'audio': ['mp3', 'wav'],
                      'video': ['mp4', 'mkv']
        }

    def __call__(self, file_type):
        return self.types.get(file_type, [])

get_ext = get_ext()

get_ext('audio')  # Returns ['mp3', 'wav']
登入後複製

這允許您動態修改檔案類型。

get_ext.types['binary'] = ['bin', 'exe']

get_ext('binary')  # Returns ['bin', 'exe']
登入後複製

以上是如何在Python中根據字串輸入存取預定義清單?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板