198 lines
5.3 KiB
Plaintext
198 lines
5.3 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": "code",
|
|
"execution_count": null,
|
|
"id": "6c1cfb7b-7252-49ff-97f9-399b658ddf38",
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"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": "code",
|
|
"execution_count": null,
|
|
"id": "9148dcb7-ccaf-46f5-8390-ebe702ed4c02",
|
|
"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
|
|
}
|