python - 使用字典作为查找表
问题描述
我有一个 jinja 模板,我想将一个值传递给(一个国家的标识符)。数据的格式是两个字母的国家代码(例如"PL"
波兰)。
通过模板,我需要将相应的标志作为输出传递,但是标志保存在app文件夹结构中,所以我需要获取图像的路径。
我的问题:我想不出os.path
在 jinja 中使用的方法,所以现在我试图通过创建一个匹配国家字符串和相对路径的字典来解决它,如下所示:
countries = {"PL" : "countries/flags/poland.png"}
应用程序文件夹的系统路径随后在 Python 中通过os.path
.
我的问题:如何使用我得到的国家字符串自动转换为国家的路径格式?就像是:
for data in countries:
if data in countries.keys:
return countries.value
提前致谢!
解决方案
假设data
是一个国家代码("PL"
例如):
def get_path(data):
return countries.get(data)
该get()
方法检查字典是否有键,如果有则返回相应的值,否则返回None
.
如果您想要一个默认值,而不是None
键不存在时,您可以将其指定为第二个参数,如下所示:
def get_path(data):
return countries.get(data, "default/path/x/y/z")
推荐阅读
- javascript - 显示适合多个角色的用户 discord.js
- html - How to properly size images within a div using flexbox?
- javascript - Adding a value at the end of an iframe's src
- javascript - Vue 开发和生产构建看起来不同
- powerbi - PowerBI/SSAS Tabular: How to do calculation group "most recent value" item with measures from multiple fact tables?
- sql-server - Sort COALESCE generated columns in a dynamic pivot table
- android - 获取并显示我的 Firebase 存储中存在的所有文件夹和文件
- ios - SwiftUI 的预览画布不起作用,找不到应用程序包
- java - 如何告诉一个类使用另一个类的方法?
- postgresql - “VARCHAR”第 1 行或附近的语法错误:CREATE OR REPLACE FUNCTION DATEADD (interval VARCHAR(4000),