[英]How to use a variable as dictionary key using f-string in python?
我正在嘗試打印字典的字典項目值,但我的項目也是另一個用戶輸入變量。 如何使用 f-string 打印選定的值?
option = ''
languages = {'1':'Learn Python', '2':'Learn Java', '3':'Learn C++', '4':'Learn PHP', '5':'Quit'}
option = input('Please choose an option between 1 and 5')
# Following part is not working!!!
print(f'Youve selected {languages["{option}"]}')
# Following part is working!!!
print(f'Youve selected {languages[option]}')
您需要使用下一個字符串: print(f'Youve selected {languages[option]}')
f-string 不允許嵌套插值。 但是,要從字典中獲得正確的選項,您不需要引號, languages[option]
就可以了。
因此,您要使用的行將是print(f"You've selected {languages[option]}")
option 是一個變量,但您選擇了一個字符串。 這意味着你給字典語言的鍵是你的情況 {option} 而這個鍵不存在
languages = {'1':'Learn Python', '2':'Learn Java', '3':'Learn C++', '4':'Learn PHP', '5':'Quit'}
option = str(input('Please choose an option between 1 and 5'))
# Following part is working!!!
print(f'Youve selected {languages[option]}')
您沒有使用變量選項,而是使用 {option} 作為字符串並嘗試打印鍵 {option} 的值。 只需刪除括號和“”。
您也可以在 af 字符串中使用 af 字符串,但這不是必需的。
print(f'Youve selected {languages[f"{option}"]}')
在這種情況下,您的代碼不起作用的原因是,因為您在 af 字符串中創建了一個字符串,而不是在 af 字符串中創建了 af 字符串
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.