physical_quantity_extract.py 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. import re
  2. physical_quantity_dict = {
  3. "长度": ["刻度尺", "米", "光年", "身高", "[长厚]度", "[厘分千]米"],
  4. "距离": ["距离", "相距"],
  5. "高度": ["高度", "高"],
  6. "时间": ["时间", "秒", "分钟", "秒表"],
  7. "质量": ["质量", "千克", "克", "惯性", "天平", "公?斤", "\dk?g"],
  8. "密度": ["密度", "鉴别", "g/cm\^?3", "kg/m\^?3"],
  9. "速度": ["速度", "米每秒", "平均速度", "运动图像", "追及", "相遇", "m/s", "km/h"],
  10. "重力": ["重力", "重心", "纬度"],
  11. "弹力": ["形变", "弹力", "胡克", "弹簧"],
  12. "拉力": ["拉力", "拉伸"],
  13. "摩擦力": ["摩擦力", "静摩擦", "滑动摩擦", "滚动摩擦", "接触面粗糙程度", "摩擦"],
  14. "压强": ["压强", "压力效果"],
  15. "液体压强": ["液体压强", "连通器"],
  16. "大气压强": ["大气压", "流体压强", "托里拆利实验"],
  17. "浮力": ["浮力", "漂浮", "沉浮", "悬浮", "阿基米德原理"],
  18. # (?!快)排除"快"
  19. "功": ["做功(?!快)", "功(?!快)"],
  20. "功率": ["功率", "做功快慢", "瓦特"],
  21. "动能": ["动能"],
  22. "重力势能": ["重力势能", "重力做功"],
  23. "弹性势能": ["弹性势能"],
  24. "机械能": ["机械能", "动能", "势能"],
  25. "海拔高度": ["海拔", "海拔高度"],
  26. "横截面积": ["横截面积", "底面积"],
  27. "阻力臂": ["阻力臂", "杠杆"],
  28. "动力臂": ["动力臂", "杠杆"],
  29. "电荷": ["静电", "摩擦起电", "正电荷", "负电荷", "元电荷", "电荷", "验电器", "带电"],
  30. "电流": ["定向移动", "安培", "电流", "电流热效应", "电流磁效应", "电流表", "安培表", "电笔"],
  31. "电压": ["电压", "电压表", "伏特"],
  32. "电阻": ["电阻", "电阻器", "电阻率", "欧姆", "半导体", "超导", "变阻器", "欧姆定律", "Ω"],
  33. "电功": ["电功", "焦耳定律", "电能"],
  34. "电功率": ["额定功率", "电功率", "电功快慢", "额定电压"],
  35. "温度": ["温度", "温度计", "摄氏度", "华氏度", "温标", "保温", "体温计", "寒暑表", "℃"],
  36. "内能": ["分子动理论", "热运动", "分子间作用力", "热传递"],
  37. "热量": ["热量", "热值"],
  38. "比热容": ["比热容", "吸热本领", "J/(kg·℃)"],
  39. "音调": ["音调", "频率", "高音", "低音", "Hz"],
  40. "响度": ["振幅", "分贝", "响度", "dB"],
  41. "音色": ["乐器", "音色", "闻其声知其人"],
  42. "入射角": ["入射", "入射角度"],
  43. "反射角": ["反射", "反射角度"],
  44. "光速": ["光速"],
  45. "像距": ["像距"],
  46. "物距": ["物距"],
  47. }
  48. def physical_quantity_extract(content):
  49. physical_quantity = []
  50. for k,v in physical_quantity_dict.items():
  51. if re.findall('|'.join(v), content):
  52. physical_quantity.append(k)
  53. return physical_quantity
  54. if __name__ == "__main__":
  55. content = "如图,在老师的指导下,小军用测电笔(试电笔)试触某插座的插孔,用指尖抵住笔尾金属体,测电笔的氖管发光,此时(选填'有'或'没有')电流通过小军的身体,"
  56. res = physical_quantity_extract(content)
  57. print(res)