Heim > Backend-Entwicklung > Python-Tutorial > Wie kann ich in Python über ihre String-Namen auf Variablenwerte zugreifen?

Wie kann ich in Python über ihre String-Namen auf Variablenwerte zugreifen?

Patricia Arquette
Freigeben: 2024-12-11 11:54:11
Original
761 Leute haben es durchsucht

How Can I Access Variable Values Using Their String Names in Python?

Zugriff auf Variablenwerte über den String-Namen

In vielen Szenarien kann die stringbasierte Variablensuche mithilfe von Wörterbüchern erreicht werden. So geht's:

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

Jetzt können Sie die gewünschte Liste durch die String-Eingabe abrufen:

get_ext['audio']  # ['mp3', 'wav']
Nach dem Login kopieren

Wenn Sie lieber eine Funktion verwenden möchten, können Sie die get-Methode des Wörterbuchs zuweisen oder seine Elementabrufmethode (__getitem__) dazu:

get_ext = get_ext.get
get_ext('video')  # ['mp4', 'mkv']
Nach dem Login kopieren

Die Zuweisung zu get_ext.get bietet ein Standardverhalten der Rückgabe Keine für unbekannte Schlüssel. Weisen Sie für einen KeyError stattdessen get_ext.__getitem__ zu.

Alternativ können Sie das Wörterbuch in eine Funktion einschließen, um einen benutzerdefinierten Standardwert bereitzustellen:

def get_ext(file_type):
    types = {'text': ['txt', 'doc'],
             'audio': ['mp3', 'wav'],
             'video': ['mp4', 'mkv']}
    return types.get(file_type, [])
Nach dem Login kopieren

Um das Setup zu optimieren, können Sie Folgendes tun: Definieren Sie eine Klasse mit einer call-Methode, um die Suche abzuwickeln:

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, [])
Nach dem Login kopieren

This Der Ansatz verbessert die Effizienz, indem das Typenwörterbuch nur einmal erstellt wird, und ermöglicht dynamische Aktualisierungen:

get_ext = get_ext()
get_ext.types['binary'] = ['bin', 'exe']
get_ext('binary')  # ['bin', 'exe']
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie kann ich in Python über ihre String-Namen auf Variablenwerte zugreifen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage