user_add示例
#!/usr/bin/python3
# -*- coding: utf-8 -*-
# @Time : 2018/5/28 16:51
# @File : use_test_add.py
数据:test.txt
1,Alex Li,Alex Li,13651054608,Market,2013-04-01
2,Jack Wang,28,13451024618,HR,2015-01-07
3,Rain Wang,21,13451054628,Market,2017-04-01
4,Mack Qiao,44,15653354238,Sales,2016-02-01
5,Rachel Chen,23,13351024606,Market,2013-03-16
6,Eric Liu,19,18531054602,Marketing,2012-12-01
8,Kevin Chen,22,13151054603,Sales,2013-04-01
9,Shit Wen,20,13351024642,Market,2017-07-03
10,Shanshan Du,26,13698424612,Operation,2017-07-02
11,Alex Li,25,134435344,IT,2015‐10‐29
12,Alex Li,25,1344353441,IT,2015‐10‐29
13,Alex Li,25,1344353443,IT,2015‐10‐29
14,Alex Li,25,1344353424,IT,2015‐10‐29
方法一:
staff_table = {}
field_list = ["num", "name", "age", "phone", "dept", "enroll_date"]
def openfile():
staff_file = open("test.txt", 'r+', encoding='utf-8')
for line in staff_file:
line = line.strip().split(',')
staff_table[line[1]] = dict(zip(field_list, line[:6]))
if __name__ == "__main__":
openfile()
print(staff_table, type(staff_table))
# {'Alex Li': {'num': '14', 'name': 'Alex Li', 'age': '25', 'phone': '1344353424', 'dept': 'IT', 'enroll_date': '2015‐10‐29'}, 'Jack Wang': {'num': '2', 'name': 'Jack Wang', 'age': '28', 'phone': '13451024618', 'dept': 'HR', 'enroll_date': '2015-01-07'}, 'Rain Wang': {'num': '3', 'name': 'Rain Wang', 'age': '21', 'phone': '13451054628', 'dept': 'Market', 'enroll_date': '2017-04-01'}, 'Mack Qiao': {'num': '4', 'name': 'Mack Qiao', 'age': '44', 'phone': '15653354238', 'dept': 'Sales', 'enroll_date': '2016-02-01'}, 'Rachel Chen': {'num': '5', 'name': 'Rachel Chen', 'age': '23', 'phone': '13351024606', 'dept': 'Market', 'enroll_date': '2013-03-16'}, 'Eric Liu': {'num': '6', 'name': 'Eric Liu', 'age': '19', 'phone': '18531054602', 'dept': 'Marketing', 'enroll_date': '2012-12-01'}, 'Kevin Chen': {'num': '8', 'name': 'Kevin Chen', 'age': '22', 'phone': '13151054603', 'dept': 'Sales', 'enroll_date': '2013-04-01'}, 'Shit Wen': {'num': '9', 'name': 'Shit Wen', 'age': '20', 'phone': '13351024642', 'dept': 'Market', 'enroll_date': '2017-07-03'}, 'Shanshan Du': {'num': '10', 'name': 'Shanshan Du', 'age': '26', 'phone': '13698424612', 'dept': 'Operation', 'enroll_date': '2017-07-02'}} <class 'dict'>
for k, v in staff_table.items():
print(k, v, type(v)) # Alex Li {'num': '14', 'name': 'Alex Li', 'age': '25', 'phone': '1344353424', 'dept': 'IT', 'enroll_date': '2015‐10‐29'} <class 'dict'>
方法二:
#支持以下三种查询方法
#find name,age from staff_table where age > 22
#find * from staff_table where dept = "IT"
#find * from staff_table where enroll_date like "2013"
staff_table = {}
new_staff_table = {}
new_staff_list = []
def openfile():
staff_file = open("staffinfo.txt", 'r+', encoding='utf-8')
for line in staff_file:
line = line.split(',')
staff_table[line[1]] = line
for value in staff_table:
new_staff_table['num'] = staff_table[value][0]
new_staff_table['name'] = staff_table[value][1]
new_staff_table['age'] = staff_table[value][2]
new_staff_table['phone'] = staff_table[value][3]
new_staff_table['dept'] = staff_table[value][4]
new_staff_table['enroll_date'] = staff_table[value][5]
print(staff_table[value])
staff_table[value] = new_staff_table
print(staff_table[value])
print(staff_table)
openfile()
user_add示例的更多相关文章
- pureMVC简单示例及其原理讲解五(Facade)
本节将讲述Facade,Proxy.Mediator.Command的统一管家.自定义Facade必须继承Facade,在本示例中自定义Facade名称为ApplicationFacade,这个名称也 ...
- pureMVC简单示例及其原理讲解四(Controller层)
本节将讲述pureMVC示例中的Controller层. Controller层有以下文件组成: AddUserCommand.as DeleteUserCommand.as ModelPrepCom ...
- pureMVC简单示例及其原理讲解三(View层)
本篇说的是View层,即视图层,在本示例中包括两个部分:MXML文件,即可视控件:Mediator. 可视控件 可视控件由UserForm.mxml(图1)和UserList.mxml(图2)两个文件 ...
- Swift3.0服务端开发(一) 完整示例概述及Perfect环境搭建与配置(服务端+iOS端)
本篇博客算是一个开头,接下来会持续更新使用Swift3.0开发服务端相关的博客.当然,我们使用目前使用Swift开发服务端较为成熟的框架Perfect来实现.Perfect框架是加拿大一个创业团队开发 ...
- .NET跨平台之旅:将示例站点升级至 ASP.NET Core 1.1
微软今天在 Connect(); // 2016 上发布了 .NET Core 1.1 ,ASP.NET Core 1.1 以及 Entity Framework Core 1.1.紧跟这次发布,我们 ...
- 通过Jexus 部署 dotnetcore版本MusicStore 示例程序
ASPNET Music Store application 是一个展示最新的.NET 平台(包括.NET Core/Mono等)上使用MVC 和Entity Framework的示例程序,本文将展示 ...
- WCF学习之旅—第三个示例之四(三十)
上接WCF学习之旅—第三个示例之一(二十七) WCF学习之旅—第三个示例之二(二十八) WCF学习之旅—第三个示例之三(二十九) ...
- JavaScript学习笔记(一)——延迟对象、跨域、模板引擎、弹出层、AJAX示例
一.AJAX示例 AJAX全称为“Asynchronous JavaScript And XML”(异步JavaScript和XML) 是指一种创建交互式网页应用的开发技术.改善用户体验,实现无刷新效 ...
- XAMARIN ANDROID 二维码扫描示例
现在二维码的应用越来越普及,二维码扫描也成为手机应用程序的必备功能了.本文将基于 Xamarin.Android 平台使用 ZXing.Net.Mobile 做一个简单的 Android 条码扫描示 ...
随机推荐
- redis高可用 - redis集群
redis-sentinel方案提供了单点的高可用解决方案,但是当数据量和业务量极速增长时,单点的reids不可能无限的纵向扩容(增大内存),这个时候就需要redis有集群的能力来扛. redis集群 ...
- Java回顾之多线程同步
在这篇文章里,我们关注线程同步的话题.这是比多线程更复杂,稍不留意,我们就会“掉到坑里”,而且和单线程程序不同,多线程的错误是否每次都出现,也是不固定的,这给调试也带来了很大的挑战. 在这篇文章里,我 ...
- 【测试设计】使用jenkins 插件Allure生成漂亮的自动化测试报告
前言 以前做自动化测试的时候一直用的HTMLTestRunner来生成测试报告,后来也尝试过用Python的PyH模块自己构建测试报告,在后来看到了RobotFramework的测试报告,感觉之前用的 ...
- 微信分享签名Java代码实现
最近写了一个小微信签名功能,记录一下希望用到的朋友可以参考下. RestController @RequestMapping("/api/wx") public class Wei ...
- python实现本地批量ping多个IP
本文主要利用python的相关模块进行批量ping ,测试IP连通性. 下面看具体代码(python3): #!/usr/bin/env python#-*-coding:utf-8-*- impor ...
- bzoj3172: [Tjoi2013]单词 ac自动机
某人读论文,一篇论文是由许多单词组成.但他发现一个单词会在论文中出现很多次,现在想知道每个单词分别在论文中出现多少次. Input 第一个一个整数N,表示有多少个单词,接下来N行每行一个单词.每个单词 ...
- IOS-网络(文件压缩和解压缩)
// // ViewController.m // IOS_0206_文件上传 // // Created by ma c on 16/2/6. // Copyright © 2016年 博文科技. ...
- 【git】提交到github不显示贡献小绿点问题的解决
问题描述: 最近一直在用github来写博客,但是今天发现github上的contributions记录并没有我的提交记录. 经过一番百度和自行捣鼓发现了问题所在. 原因: 最近实习,公司给配电脑.原 ...
- hdu 3685 10 杭州 现场 F - Rotational Painting 重心 计算几何 难度:1
F - Rotational Painting Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & % ...
- mybatis----Integer = 0 刷选不出来条件原因以及sql改法
Xml写法: POJO: 当status的值为 0时该where SQLand status = 0并未正常拼接,也就是说test内的表达式为false,从而导致查询结果错误.但是,显然该值(Inte ...