首頁 >後端開發 >Python教學 >如何使用字串名稱存取 Python 變數?

如何使用字串名稱存取 Python 變數?

Susan Sarandon
Susan Sarandon原創
2024-12-21 08:02:09464瀏覽

How Can I Access Python Variables Using Their String Names?

透過字串名稱存取變數

在Python 中,您可能會遇到想要透過字串名稱動態存取變數的情況。要實現此目的,您可以考慮多種方法。

使用字典

一個常見的方法是使用字典將字串名稱與其對應的值關聯起來。以下是一個範例:

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

print(get_ext['audio'])  # Output: ['mp3', 'wav']

指派給字典的'get' 方法

或者,您可以將字典的'get' 方法指派給變數或功能。這提供了一種基於字串名稱存取值的簡潔方法。

get_ext = get_ext.get
print(get_ext('video'))  # Output: ['mp4', 'mkv']

使用自訂函數

如果您喜歡基於函數的方法,您可以包裝函數內的字典並根據需要處理未知的鍵。例如:

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

    return types.get(file_type, [])

print(get_ext('audio'))  # Output: ['mp3', 'wav']

使用基於類別的方法

對於更複雜的場景,您可以建立一個類別來管理變數查找。這提供了靈活性並允許動態更新已識別的文件類型。例如:

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()
print(get_ext('audio'))  # Output: ['mp3', 'wav']
get_ext.types['binary'] = ['bin', 'exe']
print(get_ext('binary'))  # Output: ['bin', 'exe']

透過採用這些技術,您可以在 Python 中透過字串名稱有效地存取變量,從而實現靈活和動態的程式模式。

以上是如何使用字串名稱存取 Python 變數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn