python练习
创建一个简单的姓名和编号系统,让用户输入一组人的姓名和编号,实现提供按照编号或姓名排序输出的功能。
nums = []
names = []
Afternums = []
Afternames = []
Afternums1 = []
Afternames1 = []
Afternums2 = []
Afternames2 = []
Afternums3 = []
Afternames3 = []
def init():
while(1):
num = int(input('please enter a number:'))
name = input('please enter the name:')
nums.append(num)
names.append(name)
if(input('是否继续输入,退出请按q:') == 'q'):
break
def sortnumer():
num = nums[:]
name = names[:]
while(len(num)):
Minnum = min(num)
Minname = name.pop(num.index(Minnum))
Afternums.append(Minnum)
Afternames.append(Minname)
num.remove(Minnum)
print("编号从小到大:")
print(30*"*")
for i in range(len(Afternums)):
print('%15d %-20s' % (Afternums[i],Afternames[i]))
print(30*"*")
def sortnumer1():
num1 = nums[:]
name1 = names[:]
while(len(num1)):
Maxnum = max(num1)
Maxname = name1.pop(num1.index(Maxnum))
Afternums1.append(Maxnum)
Afternames1.append(Maxname)
num1.remove(Maxnum)
print("编号从大到小:")
print(30*"*")
for i in range(len(Afternums1)):
print('%15d %-20s' % (Afternums1[i],Afternames1[i]))
print(30*"*")
def sortname():
num2 = nums[:]
name2 = names[:]
while(len(name2)):
Minname = min(name2)
Minnum = num2.pop(name2.index(Minname))
Afternums2.append(Minnum)
Afternames2.append(Minname)
name2.remove(Minname)
print("姓名从小到大:")
print(30*"*")
for i in range(len(Afternames2)):
print('%15s %-10d' % (Afternames2[i],Afternums2[i]))
print(30*"*")
def sortname1():
num3= nums[:]
name3 = names[:]
while(len(name3)):
Maxname = str(max(name3))
Maxnum = num3.pop(name3.index(Maxname))
Afternums3.append(Maxnum)
Afternames3.append(Maxname)
name3.remove(Maxname)
print("姓名从大到小:")
print(30*"*")
for i in range(len(Afternames3)):
print('%15s %-10d' % (Afternames3[i],Afternums3[i]))
print(30*"*")
def main():
print(20*"*"+"欢迎进入人力资源档案系统"+20*"*")
print("请输入一组职员名称和编号:")
init()
print("请选择查看的方式")
print("1.按照编号从小到大输出")
print("2.按照编号从大到小输出")
print("3.按照姓名从小到大输出")
print("4.按照姓名从大到小输出")
print("0.退出请按0")
while(1):
index = int(input("请选择:"))
if(index==1):
sortnumer()
elif(index==2):
sortnumer1()
elif(index==3):
sortname()
elif(index==4):
sortname1()
elif(index==0):
print("您已退出,谢谢使用")
break
else:
print("输入有误,请重试")
main() >>> ================================ RESTART ================================
>>>
********************欢迎进入人力资源档案系统********************
请输入一组职员名称和编号:
please enter a number:5659
please enter the name:zhaoyujiao
是否继续输入,退出请按q:
please enter a number:8965
please enter the name:songlin
是否继续输入,退出请按q:
please enter a number:1234
please enter the name:xiaohua
是否继续输入,退出请按q:q
请选择查看的方式
1.按照编号从小到大输出
2.按照编号从大到小输出
3.按照姓名从小到大输出
4.按照姓名从大到小输出
0.退出请按0
请选择:1
编号从小到大:
******************************
1234 xiaohua
5659 zhaoyujiao
8965 songlin
******************************
请选择:2
编号从大到小:
******************************
8965 songlin
5659 zhaoyujiao
1234 xiaohua
******************************
请选择:3
姓名从小到大:
******************************
songlin 8965
xiaohua 1234
zhaoyujiao 5659
******************************
请选择:4
姓名从大到小:
******************************
zhaoyujiao 5659
xiaohua 1234
songlin 8965
******************************
请选择:5
输入有误,请重试
请选择:0
您已退出,谢谢使用
>>>
python练习的更多相关文章
- Python中的多进程与多线程(一)
一.背景 最近在Azkaban的测试工作中,需要在测试环境下模拟线上的调度场景进行稳定性测试.故而重操python旧业,通过python编写脚本来构造类似线上的调度场景.在脚本编写过程中,碰到这样一个 ...
- Python高手之路【六】python基础之字符串格式化
Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存.[PEP-3101] This ...
- Python 小而美的函数
python提供了一些有趣且实用的函数,如any all zip,这些函数能够大幅简化我们得代码,可以更优雅的处理可迭代的对象,同时使用的时候也得注意一些情况 any any(iterable) ...
- JavaScript之父Brendan Eich,Clojure 创建者Rich Hickey,Python创建者Van Rossum等编程大牛对程序员的职业建议
软件开发是现时很火的职业.据美国劳动局发布的一项统计数据显示,从2014年至2024年,美国就业市场对开发人员的需求量将增长17%,而这个增长率比起所有职业的平均需求量高出了7%.很多人年轻人会选择编 ...
- 可爱的豆子——使用Beans思想让Python代码更易维护
title: 可爱的豆子--使用Beans思想让Python代码更易维护 toc: false comments: true date: 2016-06-19 21:43:33 tags: [Pyth ...
- 使用Python保存屏幕截图(不使用PIL)
起因 在极客学院讲授<使用Python编写远程控制程序>的课程中,涉及到查看被控制电脑屏幕截图的功能. 如果使用PIL,这个需求只需要三行代码: from PIL import Image ...
- Python编码记录
字节流和字符串 当使用Python定义一个字符串时,实际会存储一个字节串: "abc"--[97][98][99] python2.x默认会把所有的字符串当做ASCII码来对待,但 ...
- Apache执行Python脚本
由于经常需要到服务器上执行些命令,有些命令懒得敲,就准备写点脚本直接浏览器调用就好了,比如这样: 因为线上有现成的Apache,就直接放它里面了,当然访问安全要设置,我似乎别的随笔里写了安全问题,这里 ...
- python开发编译器
引言 最近刚刚用python写完了一个解析protobuf文件的简单编译器,深感ply实现词法分析和语法分析的简洁方便.乘着余热未过,头脑清醒,记下一点总结和心得,方便各位pythoner参考使用. ...
- 关于解决python线上问题的几种有效技术
工作后好久没上博客园了,虽然不是很忙,但也没学生时代闲了.今天上博客园,发现好多的文章都是年终总结,想想是不是自己也应该总结下,不过现在还没想好,等想好了再写吧.今天写写自己在工作后用到的技术干货,争 ...
随机推荐
- mysql中文乱码解决方法
latin1(1和l的区别,l要么没有缺缺,要么缺缺是向左的直的; 1向左的缺缺是弯曲的,应该是可以看得出来的)是8位的字符集,表示英文和西欧字母. 瑞士: Switzerland [swits2la ...
- 2015.4.25-2015.5.1 字符串去重,比例圆设计,中奖机和canvas橡皮擦效果等
1.字符串去重,html模板取值 2.javascript正则表达式之$1...$9 3.jquery插件 4.返回上一页并刷新 解决方法: <a href ="javas ...
- Android JSON、GSON、FastJson的封装与解析
声明: 1.本帖只提供代码,不深入讲解原理.如果读者想要深入了解,那就不要在这个帖子上浪费时间了 2.客户端用的是Google官方的Volley访问服务器,具体了解Volley请戳 这里 3.本帖三种 ...
- C和指针 第三章 链接属性 extern、internal、none
三种链接属性 组成一个程序有多个源文件,如果相同的标识符出现在多个源文件中,那么标识符的链接属性决定如何处理在不同文件中出现的标识符. 链接属性有三种: external:外部 多个源文件中的相同标识 ...
- poj 1192
此题亦一眼看出算法,一次AC. 没什么好讲的,就是一个普通的树形动规. 用dp[n][0]表示n号顶点不取时的最大值,dp[n][1]表示n号顶点取时的最大值. dp[n][0]=max{dp[x][ ...
- How do I enable log4net internal debugging?
http://logging.apache.org/log4net/release/faq.html
- jquery版小型婚礼(可动态添加祝福语)
前两天在网上不小心看到“js许愿墙”这几个字,我的神经就全部被调动了.然后就开始我的百度生涯,一直寻觅许愿墙背景图片和便利贴图片,觅了好久……一直没找到满意的……无意间看到祝福语和一些卡通婚礼图片.最 ...
- highcharts的引用
开放 CDN 服务 1.基础的使用(CDN) <script src="http://cdn.hcharts.cn/jquery/jquery-1.8.3.min.js"&g ...
- Zookeeper异常ConnectionLossException解决
项目中要求做一个将配置文件读取到zookeeper节点上的工具: 开发代码如下: 但是当连接到远端的Zookeeper服务之后,出现了下面异常: Exception in thread "m ...
- C# 文件/文件夹重命名
C# 重命名的方法是MoveTo() 官方文档地址 (https://msdn.microsoft.com/zh-cn/library/system.io.fileinfo.moveto%28VS.8 ...