Files
jupyter/体测单位/沧州炼化.ipynb
T
2025-11-10 20:06:46 +08:00

206 lines
5.5 KiB
Plaintext

{
"cells": [
{
"cell_type": "markdown",
"id": "ce7a7798-b8b7-4564-9e17-3e9c2d4565d8",
"metadata": {},
"source": [
"## 体测人员导入"
]
},
{
"cell_type": "code",
"execution_count": 18,
"id": "270e8c57-36d3-476c-8c50-4d8bc38a918a",
"metadata": {
"execution": {
"iopub.execute_input": "2025-11-09T05:35:45.149501Z",
"iopub.status.busy": "2025-11-09T05:35:45.148976Z",
"iopub.status.idle": "2025-11-09T05:35:45.291101Z",
"shell.execute_reply": "2025-11-09T05:35:45.290596Z",
"shell.execute_reply.started": "2025-11-09T05:35:45.149453Z"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"1299 ok\n"
]
}
],
"source": [
"import openpyxl\n",
"import json\n",
"from datetime import date\n",
"\n",
"wb = openpyxl.load_workbook('data/沧州炼化人员.xlsx')\n",
"sheet = wb.active\n",
"# sheets = wb.sheetnames\n",
"person = {}\n",
"\n",
"for n in range(2, sheet.max_row+1):\n",
" code = sheet.cell(n, 2).value\n",
" person.setdefault(code, {})\n",
" dict1 = {}\n",
" dict1['name'] = sheet.cell(n, 4).value\n",
" dict1['sex'] = sheet.cell(n, 5).value\n",
" dict1['birth'] = str(sheet.cell(n, 6).value).replace('/','-').split(' ')[0] \n",
" dict1['unit'] = sheet.cell(n, 3).value\n",
" dict1['phone'] = str(sheet.cell(n, 7).value)\n",
" person[code] = dict1\n",
"filename = 'data/沧州炼化人员.json'\n",
"with open(filename, 'w') as fl:\n",
" json.dump(person, fl, ensure_ascii=False)\n",
"print(len(person),'ok')"
]
},
{
"cell_type": "code",
"execution_count": 9,
"id": "829d9460-a14e-4689-a7c4-d00bbd8c2e32",
"metadata": {
"execution": {
"iopub.execute_input": "2025-11-07T08:37:47.436725Z",
"iopub.status.busy": "2025-11-07T08:37:47.435955Z",
"iopub.status.idle": "2025-11-07T08:37:47.582958Z",
"shell.execute_reply": "2025-11-07T08:37:47.582377Z",
"shell.execute_reply.started": "2025-11-07T08:37:47.436655Z"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[['1553904', '孙建国', '物资采购中心'], ['1553904', '张巍', '应急救援中心']]\n"
]
}
],
"source": [
"import openpyxl\n",
"import json\n",
"from datetime import date\n",
"\n",
"wb = openpyxl.load_workbook('data/沧州炼化人员.xlsx')\n",
"sheet = wb.active\n",
"# sheets = wb.sheetnames\n",
"person = {}\n",
"list1 = []\n",
"list2 = []\n",
"for n in range(2, sheet.max_row+1):\n",
" code = sheet.cell(n, 2).value\n",
" if code not in list1:\n",
" list1.append(code)\n",
" else:\n",
" list2.append(code)\n",
"list3 = []\n",
"for n in range(2, sheet.max_row+1):\n",
" code = sheet.cell(n, 2).value\n",
" if code in list2:\n",
" list4 = [code,sheet.cell(n, 4).value,sheet.cell(n, 3).value]\n",
" list3.append(list4)\n",
"print(list3)\n",
"filename = 'data/沧州炼化编号重复人员.xlsx'\n",
"wb = openpyxl.Workbook()\n",
"sheet = wb.active\n",
"\n",
"for row in list3:\n",
" sheet.append(row)\n",
" \n",
"wb.save(filename)"
]
},
{
"cell_type": "markdown",
"id": "b4f7023f-127c-4c47-a8e2-78922fbcd975",
"metadata": {},
"source": [
"## 生成读卡系统文件"
]
},
{
"cell_type": "code",
"execution_count": 19,
"id": "7b6c8cb8-50ab-4b59-ac9a-6afb3db61476",
"metadata": {
"execution": {
"iopub.execute_input": "2025-11-09T05:35:48.182110Z",
"iopub.status.busy": "2025-11-09T05:35:48.181365Z",
"iopub.status.idle": "2025-11-09T05:35:48.197106Z",
"shell.execute_reply": "2025-11-09T05:35:48.196434Z",
"shell.execute_reply.started": "2025-11-09T05:35:48.182041Z"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"1297 ok\n"
]
}
],
"source": [
"import json\n",
"\n",
"filename = 'data/沧州炼化人员.json'\n",
"with open(filename,'r') as fl:\n",
" dict1 = json.load(fl)\n",
"list1 = []\n",
"for k, v in dict1.items():\n",
" dict2 = {}\n",
" #if dict1['sex'] =='男':\n",
" # sex = 1\n",
" \n",
" dict2 = {'id':k,'name':v['name'],'gender':v['sex'],'birth':v['birth'],'unit':v['unit']}\n",
" list1.append(dict2)\n",
"json_data = json.dumps(list1,ensure_ascii=False, indent=4) \n",
"\n",
"# 将 json 数据写入文件\n",
"with open(\"data/card_沧州炼化人员.json\", \"w\",encoding = 'utf-8') as file:\n",
" file.write(json_data) \n",
"print(len(list1),'ok')"
]
},
{
"cell_type": "markdown",
"id": "f9ef800a-b760-4933-b7a4-c69edef593d0",
"metadata": {},
"source": [
"## 导出俯卧撑成绩"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "ccb2fe86-c588-4373-85df-37adda55c694",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.12.3"
}
},
"nbformat": 4,
"nbformat_minor": 5
}