[英]Importing a variable from another file in Python
我有兩個文件 - abc.py和main.py 。 我的目標是從另一個文件中導入整個字典。 為了更好地解釋它,用戶輸入一個輸入(比如說英語),這應該是將變量 English 從abc.py導入main.py 。 下面是我試過的代碼,它給了我一個錯誤。
*/abc.py
English = {1:"Hello", 2:"World"}
Italian = {1:"Bonjour", 2:"Mondo"}
*/main.py
import abc
option=input("Please Enter 'English' or 'Italian': ")
selectedLanuage = abc.option
print(selectedLanuage)
我能想到的一種解決方法是將字典和輸入的訪問分開。
option=input("Please Enter 'English' or 'Italian': ")
if option == "English":
selectedLanguage = abc.English
elif option == "Italian":
selectedLanguage = abc.Italian
print(selectedLanguage)
編輯:
languages = {"English": abc.English, "Italian": abc.Italian}
option = input("Please Enter 'English' or 'Italian': ")
selectedLanguage = languages[option]
首先,我強烈建議您將當前的abc
文件命名為其他名稱,因為abc
實際上是一個標准庫模塊。 假設您在languages.py
中有以下內容
English = {1: "Hello", 2: "World"}
Italian = {1: "Bonjour", 2: "Mondo"}
以及main.py
中的以下內容
from languages import English, Italian
languages_by_choice = {
'English': English,
'Italian': Italian
}
option = input('Please enter "English" or "Italian": ')
selected_language = languages_by_choice.get(option)
if not selected_language:
raise ValueError('Invalid language selection: {}'.format(option))
print(selected_language)
您的程序將使用如下方式:
~ python3 main.py
Please enter "English" or "Italian": English
{1: 'Hello', 2: 'World'}
~ python3 main.py
Please enter "English" or "Italian": Italian
{1: 'Bonjour', 2: 'Mondo'}
~ python3 main.py
Please enter "English" or "Italian": asdf
Traceback (most recent call last):
File "stackoverflow.py", line 11, in <module>
raise ValueError('Invalid language selection: {}'.format(option))
ValueError: Invalid language selection: asdf
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.