python - python中的字典编码
问题描述
大家好,我是 python 和编码的新手。
我想对以下药物进行分组(ICD10 编码):
A00 - B99 1
C00 - D49 2
D50 - D89 3
E00 - E89 4
我创建了映射字典,如下所示:
dict_ICD_10 = {"A":1,"B":1,"C":2,"D":2,"E":3}
但无论如何这看起来不正确,因为 D50 - D89 属于第 3 类,但根据我的编码,它属于第 2 类。我从早上开始挠头,但无法弄清楚。有没有办法从不同的地方进行这种编码方法。
提前致谢
解决方案
假设这些总是 3 位数字,您可以利用字母数字排序,并编写如下内容:
classes = (
('A00', 'B99', 1),
('C00', 'D49', 2),
('D50', 'D89', 3),
('E00', 'E89', 4),
)
def get_class(code):
for low, high, cls in classes:
if low <= code <= high:
return cls
return None
请注意,None
如果不匹配,这将返回,并且您可能还希望首先强制执行有效的 3 字符代码(例如get_class('A1')
返回 1,但可能不应该)。此外,get_class('D90')
返回None
但可能不是立即显而易见的原因(尽管在该领域可能很明显)。根据应用程序,如果代码位于这些“漏洞”之一之间,您可能想要做一些不同的事情。
推荐阅读
- css - 对文字进行叠加图像亮度调整
- html - CSS 旋转信息卡闪烁
- gunicorn - 我不想输出到 gunicorn 中的 nuhup.out 文件怎么样
- sql - SQL如何有条件地将值与另一个表中的条件相加
- javascript - 当我根据其他状态更新状态时,React 给我错误“重新渲染太多。React 限制渲染次数以防止无限循环。”
- java - 有没有更清晰的方法来处理短期的选项?
- c# - 在 ASP.NET MVC 项目中使用 REST API 的正确方法是什么?
- python - Python socket connect_ex() 似乎卡住了,具体取决于操作系统
- google-chrome - 如何将本机主机与 Chrome 扩展程序捆绑并发布?
- javascript - 带有 .p12 和 pem 证书的 Node.js POST 请求输出“错误:读取 ECONNRESET”