首頁  >  文章  >  後端開發  >  如何取得 Python 變數的名稱?

如何取得 Python 變數的名稱?

Patricia Arquette
Patricia Arquette原創
2024-11-27 10:44:19468瀏覽

How Can I Get a Python Variable's Name?

在Python 中列印變數名稱:揭示值背後的名稱

在Python 程式設計領域,存取變數的名稱可以是一項令人困惑的任務。考慮這樣一個場景,您擁有一個名為「choice」的變量,這是一個分配了值 2 的數字實體。有趣的是,您試圖檢索該變數的名稱,類似於表達式“namestr(choice)”,這將產生“choice” ' 作為其輸出。

這項努力的吸引力源自於其在建構字典方面的實用性。然而,實現這目標的道路卻一直困擾著你,讓你感到困惑。

深入研究解決方案

不要害怕,解決方案等著你的詢問。 Python 賦予我們檢查模組,這是一個強大的工具,讓我們可以深入研究程式碼的內部工作原理。利用此模組,我們可以透過以下方法提取變數的名稱:

import inspect, re

def varname(p):
  for line in inspect.getframeinfo(inspect.currentframe().f_back)[3]:
    m = re.search(r'\bvarname\s*\(\s*([A-Za-z_][A-Za-z0-9_]*)\s*\)', line)
    if m:
      return m.group(1)

if __name__ == '__main__':
  spam = 42
  print varname(spam)

此函數「varname」迭代目前訊框內的程式碼並擷取包含對「的呼叫」的行變數名稱。 '使用正規表示式,它會提取已傳遞的變數的名稱。

注意事項

雖然此方法授予獲得變數名稱的能力,但它必須謹慎接近。檢查程式碼可能是一把雙面刃,建議在採用這種複雜的解決方案之前探索替代方法。

探索選項

考慮重新訪問以下位置的任務並尋求一種更簡單、符合 Python 基礎知識的解決方案。您提供的資訊表明,讀取設定檔並根據其內容建立字典可能會提供更優雅、更有效率的解決方案。

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

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