查找用户功能的实现 | 学习笔记

简介: 快速学习查找用户功能的实现

开发者学堂课程【Python 入门 2020年版:查找用户功能的实现 】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/639/detail/10438


查找用户功能的实现

内容介绍:

一.显示学生功能

二.同名情况

三.代码简化

 

1. 显示学生功能

def show_ student():
x=input('1.査看所有学生\ n2.根据姓名査找\ n3.根据学号査找\n其他:返回\n请选择:')

y = file_manager.read_json(name+ '.json', {})
#if not y: #如果文件不存在,y 是一个空字典 {}
students=[]

# else:
students=y['all_student']
students=y.get('all.student', [])
if x=='1':
pass
elif x=='2':
pass
elif x=='3':
pass
else:
pass 

运行结果:

**欢迎采到学生管理系统**
◆1.登录
◆2.注册
◆3.退出

请选择 (1-3):1

请输入老师账号: jack
请输入密码: 12345

欢迎 Jack 老师进入学生管理系统
▼1.添加学生
▼2.查看学生
▼3.修改学生信息
▼4.删除学生
▼5.返回

请选择 (1-5):2
1.查看所有学生
2.根据姓名查找
3.根据学号查找
其他:返回
请选择: 1
学号: stu_0001, 姓名: mery,性别: female, 年龄:17, tel:112

学号: stu_0002,姓名: jimmy,性别: male,年龄: 13,tel:113

欢迎 Jack 老师进入学生管理系统
▼1.添加学生
▼2.查看学生
▼3.修改学生信息
▼4.删除学生
▼5.返回

请选择(1-5):1

请输入学生姓名: jimmy

请输入年龄: 14

请输入性别: male

请输入电话号码: 117

添加成功!
1.继续
2.返回
请选择(1-2):1
请输入学生姓名: hellen

请输入年龄: 18
请输入性别: male

请输入电话号码: 111

添加成功!
1.继续
2.返回
请选择(1-2): 1
请输入学生姓名: mery

请输入年龄: 23
请输入性别: male

请输入电话号码: 111

欢迎 Jack 老师进入学生管理系统
▼1.添加学生
▼2.查看学生
▼3.修改学生信息
▼4.删除学生
▼5.返回

请选择( 1-5):2

学号: stu_0001,姓名: mery,性别: female,年龄: 17,tel: 112

学号: stu_0002,姓名: jimmy,性别: male,年龄: 13,tel: 113

学号: stu_0003,姓名: jimmy,性别: male,年龄: 14,tel: 117

学号: stu_0004,姓名: hellen,性别: male,年龄: 18,tel: 116

学号: stu_0005,姓名 mery,性别: male,年龄: 23,tel: 111

欢迎 Jack 老师进入学生管理系统
▼1.添加学生
▼2.查看学生
▼3.修改学生信息
▼4.删除学生
▼5.返回

2. 同名情况

(1)s_id 形式

elif x=='2':
s_name = input('请输入学生姓名:')
same_name_students=[]
for student in students:
if student['name']==S_name:
same_ name_ students . append( student)
for student in same_ name_ students :
print('学号:{s__id},姓名:{name},性别:{gender},年龄:{age},s:{te1}'.format(**)

运行结果:
欢迎 Jack 老师进入学生管理系统
▼1.添加学生
▼2.查看学生
▼3.修改学生信息
▼4.删除学生
▼5.返回

请选择 (1-5):2

请输入学员姓名: mery
学号: stu_0001,姓名: mery,性别: female,年龄: 17,tel: 112

学号: stu_0005,姓名: mery,性别: male,年龄: 23,tel: 111

(2)filter() 形式

介绍:

In[2]:ages=[12,19,17,20,18,15,21]
In[3]:ages.filter(lambda age:age >=18,ages)
Traceback(most recent call last):
File"C: Users chris AppDatalLocal Programs Python Python37libsite-pexec(code_obj,self.user_global_ ns,self.user_ns)
File"<ipython- input-3-ffa1bfa498e5>",line,in<module>
ages.filter(lambda age:age >=18,ages)
'AttributeError:"list' object has no attribute'filter'
In[4]:filter(lambda age:age >= 18,ages)Out[4]:<filter at 0x1a1c1d41e08>
In[5]: list(filter(lambda age:age >= 18, ages))0ut[5]:[19,20,18, 21]

代码:

print('学号:{s_id},姓名:{name},性别:{gender},年龄:{age},:{te1}'.format(**student)
elif  x=='2':
s_name=input('请输入学员姓名:')
#same_name_students=[]
#for student in students:
if student[ 'name']==s_name:
same_name_students.append(student )

#filter结果是一个filter类,它是一个可迭代对象
same_name_students=filter(lambda s:s['name']==S__name, students )
for student in same_ name_ students :
print('学号:{s_ id}, 姓名:{name},性别:{gender},年龄:{age},西:{te1}' .format(**student) )

3. 对代码进行简化

def show_student():
key=value=
x=input('1.査看所有学生\n2.根据姓名査找\n3.根据学号査找\n其他:返回\n请选择:')

y=file manager .read_ json(name+'.json',{})
students = y.get('all_ student', [])if not students:
print('孩老師逐没有学員,清添加学員')return
if  x=='1':#査洵所有
pass
elif x=='2'
value=input('请输入学生姓名:')

key =' name
elif x=='3':
value=input('请输入学生的id:')

key = 's_ _id'
else:
return
students = filter(lambda s:s[key]==value, students)

If  not  students :
print('未找到学员')
return
#s= "s_id":"stu_0001","name":"mery","age":"17","gender":"female","tel":"112"]

#s.get(key,'')==values.get('','')==>
students = filter(lambda s: s.get(key == value, students)
if not students:
print('未找到学员')return
for student in students :
print('学号:{s_ _id}, 姓名:{name},性别: {gender},年龄:{age},:{te1}'.format(**student))

相关文章
|
Python
十八、通讯录管理系统Python版(对学生的增加,删除,修改,查询,遍历所有学员信息,退出系统,六个功能的实现)
十八、通讯录管理系统Python版(对学生的增加,删除,修改,查询,遍历所有学员信息,退出系统,六个功能的实现)
十八、通讯录管理系统Python版(对学生的增加,删除,修改,查询,遍历所有学员信息,退出系统,六个功能的实现)
|
6月前
|
安全 Linux 数据安全/隐私保护
探索Linux命令newuidmap:用户ID映射的利器
`newuidmap`是Linux工具,用于在用户命名空间中设定UID映射,支持容器安全。它允许限定容器内进程的主机系统权限,确保数据安全和隔离。通过映射文件或命令行参数定义UID映射,提供灵活性和安全性。例如,为Docker容器设置映射,使进程能访问特定UID的数据文件。使用时需注意映射准确性、权限控制和避免映射过多UID。与其他工具如`newgidmap`配合使用以增强用户命名空间支持。
|
7月前
|
Windows
win10搜索功能失效用不了如何解决|
win10搜索功能失效用不了如何解决|
68 0
|
存储 PHP
php开发实战分析(2):cookie的动态使用(设置、获取、删除、猜你喜欢原理、购物车调用)
php开发实战分析(2):cookie的动态使用(设置、获取、删除、猜你喜欢原理、购物车调用)
224 0
|
Web App开发 安全 Windows
win10_x64更新错误解决: 安装一些更新时出现问题,但我们稍后会重试。如果持续出现这些问题,并且你想要搜索Web或联系支持人员以获取相关信息,以下信息可能会对你有帮助:
可能的原因:  1、windows 服务没打开 win+r,打开【运行】对话框 输入 【service.msc】 找到 【Windows Firewall】和【Internet connection sharing】 都启动,并设为【自动】,重新启动 【设置】--【更新和安全】 2、设置的代理,但是代理没打开 将设置的代理服务器打开。
7066 0
|
JSON 数据安全/隐私保护 数据格式
查找用户功能的实现 | 学习笔记
快速学习查找用户功能的实现
|
数据安全/隐私保护 开发者 微服务
权限管理-查询所有菜单(递归) | 学习笔记
快速学习 权限管理-查询所有菜单(递归)
|
开发者 Python
修改用户功能实现 | 学习笔记
快速学习 修改用户功能实现
121 0
|
开发者 Python
显示用户功能实现 | 学习笔记
快速学习 显示用户功能实现
|
开发者 Python
查找相关的方法 | 学习笔记
快速学习查找相关的方法