python面试题&练习题之函数
1.写函数,接收两个数字参数,返回最大值
例如:
传入:10,20
返回:20
def res_max(number1,number2):
l1 = []
l1.append(number1)
l1.append(number2)
return max(l1)
2.写函数,获取传入列表的所有奇数位索引对应的元素,并将其作为新列表返回。
例如:传入:[34,23,52,352,352,3523,5],返回:[23,352,3523]
def getnewlist(mylist):
list1=[];
for i in range(0,len(mylist)):
if i%2!=0:
list1.append(mylist[i])
return list1
3.写函数,判断用户传入的对象(列表)长度是否大于5,如果大于5,那么仅保留前五个长度的内容并返回。不大于5返回本身。
例如:
传入1:[34,23,52,352,666,3523,5] 返回1:[34,23,52,352,666]
传入2:[34,23,52] 返回2:[34,23,52]
def judge_len(list1):
if len(list1)>5:
return list1[0:5]
elif len(list1)<=5:
return list1
4.写函数,检查传入的字符串是否含有空字符串,返回结果,包含空字符串返回True,不包含返回False
例如:
传入:"hello world"
返回:True
def str_spack(string):
if string.find(' '):
return True
else:
return False
5.定义一个函数,实现两个数四则运算,要注意有3个参数,分别是运算符和两个运算的数字.
例如:传入:10,*,20返回:200
def arithmetic(number1, number2, symbol):
if symbol == '+':
s = number1 + number2
elif symbol == '-':
s = number1 - number2
elif symbol == '*':
s = number1 * number2
elif symbol == '/':
s = number1 / number2
return s
方法二:
def getresult(num1,fh,num2):
str1=str(num1)+fh+str(num2)
return eval(str1)
print(getresult(10,'*',20))
6..实现学生管理系统,完成对学员的增,删,改,查和退出学生管理系统。
要求1:使用一个list用于保存学生的姓名。
要求2:输入0显示所有学员信息,1代表增加,2代表删除,3代表修改,4代表查询,exit代表退出学生管理系统。每一个功能定义一个自定义函数。界面如下:
系统界面如下:
-----------------------欢迎进入T666班学生管理系统-----------------------------
请选择系统功能:
0:显示所有学员信息
1:添加一个学员信息
2:删除一个学员信息
3:修改一个学员信息
4:查询一个学员信息
exit:退出学生管理系统
(0)输入0后效果如下:
0
["郭易","汤碗珍"..]
(1)输入1后效果如下:
1
请输入增加人的姓名:张三
["郭易","汤碗珍",'张三'..]
(2)输入2后效果如下:
2
请输入删除人的姓名:张三
["郭易","汤碗珍"..]
(3)输入3后效果如下:<注意:如果list中没有这个学员则打印:T666班没有这个学员>
3
请输入需要修改人的姓名:张三
请输入需要修改后的姓名:李四
["郭易","汤碗珍",'李四'..]
4)输入4后效果如下:<注意:如果list中没有这个学员则打印:T666班没有这个学员>
请输入查询人的姓名:张三
郭易在座位号(3<下标>)的位置。
(5)输入exit后效果如下:
exit
欢迎使用T666的学生管理系统,下次再见。
def student_management_system():
st1="""
-----------------------欢迎进入T666班学生管理系统-----------------------------
请选择系统功能:
0:显示所有学员信息
1:添加一个学员信息
2:删除一个学员信息
3:修改一个学员信息
4:查询一个学员信息
exit:退出学生管理系统
"""
option = input(st1)
if option == '':
show_student()
elif option == '':
add_student()
elif option == '':
del_student()
elif option == '':
revise_student()
elif option == '':
query_student()
elif option == 'exit':
quit() def show_student():
print(liste) def add_student():
username = input('请输入增加人的姓名:张三')
liste.append(username)
print(liste) def del_student():
liste.append('张三')
username = input('请输入删除人的姓名:张三')
liste.remove(username)
print(liste) def revise_student():
liste.append('张三')
username1 = input('请输入需要修改人的姓名:张三')
username2 = input('请输入需要修改后的姓名:李四')
if username1 not in liste:
print('T666班没有这个学员')
for i in liste:
if i == username1:
liste[liste.index(username1)] = username2
print(liste) def query_student():
liste.append('张三')
username1 = input('请输入查询人的姓名:张三')
if username1 not in liste:
print('T666班没有这个学员')
print(liste[::-1]) def quit():
print('欢迎使用T666的学生管理系统,下次再见。') 方法二:用类改写
class StudentManagementSystem:
list1 = ["郭易", "汤碗珍"]
str1 = '''
-----------------------欢迎进入T666班学生管理系统-----------------------------
请选择系统功能:
0:显示所有学员信息
1:添加一个学员信息
2:删除一个学员信息
3:修改一个学员信息
4:查询一个学员信息
exit:退出学生管理系统
''' def __init__(self):
print(self.str1) def input_option(self, option,student = None,student1 = None):
try:
if option == 0:
return self.get_student()
elif option == 1:
return self.add_student(student)
elif option == 2:
return self.del_student(student)
elif option == 3:
return self.modify_student(student,student1)
elif option == 4:
return self.select_student(student)
elif option == 'exit':
return self.quit()
except:
print('输入选项错误') def get_student(self): # 输入0
return self.list1 def add_student(self, student): # 输入1
user = student
self.list1.append(user)
return self.list1 def del_student(self, student): # 输入2
self.list1.append('张三')
user1 = student
if user1 in self.list1:
self.list1.remove(user1)
else:
print('T666班没有这个学员')
return self.list1 def modify_student(self, student1,student2): # 输入3
self.list1.append('张三')
user2 = student1
user3 = student2
if user2 in self.list1:
for i in self.list1:
if i == user2:
self.list1[self.list1.index(user2)]=user3
else:
print('T666班没有这个学员')
return self.list1 def select_student(self,student): #输入4
self.list1.append('张三')
user4 = student
if user4 in self.list1:
for i in self.list1:
if i == user4:
return self.list1[self.list1.index(i)]
else:
print('T666班没有这个学员') def quit(self):
print('欢迎使用T666的学生管理系统,下次再见。')
python面试题&练习题之函数的更多相关文章
- Python面试题之回调函数
0x00 概述 编程分为两类:系统编程(system programming)和应用编程(application programming).所谓系统编程,简单来说,就是编写库:而应用编程就是利用写好的 ...
- Python面试题之Super函数
这是个高大上的函数,在python装13手册里面介绍过多使用可显得自己是高手 23333. 但其实他还是很重要的. 简单说, super函数是调用下一个父类(超类)并返回该父类实例的方法. 这里的下一 ...
- python面试题&练习题之嵌套循环
1.打印如下结果: 1*5=5 2*10=20 3*15=45 ... 10*50=500 for i in range(1,11): print(str(i)+'x'+str((i*5))+'='+ ...
- python面试题&练习题之运算符与if控制
1.任意的输入10个数字,按从大到小排序 l2 = [] for i in range(1,11): num = input('输入第{}个数字'.format(i)) if num.isdigit( ...
- python 练习题:请利用Python内置的hex()函数把一个整数转换成十六进制表示的字符串
# -*- coding: utf-8 -*- # 请利用Python内置的hex()函数把一个整数转换成十六进制表示的字符串 n1 = 255 n2 = 1000 print(hex(n1)) pr ...
- 百道Python面试题实现,搞定Python编程就靠它
对于一般的机器学习求职者而言,最基础的就是掌握 Python 编程技巧,随后才是相关算法或知识点的掌握.在这篇文章中,我们将介绍一个 Python 练习题项目,它从算法练习题到机试实战题提供了众多问题 ...
- python公司面试题集锦 python面试题大全
问题一:以下的代码的输出将是什么? 说出你的答案并解释. class Parent(object): x = 1 class Child1(Parent): pass class Child2(Par ...
- Python面试题汇总
原文:http://blog.csdn.net/jerry_1126/article/details/44023949 拿网络上关于Python的面试题汇总了,给出了自认为合理的答案,有些题目不错,可 ...
- Python基础面试,看这篇文章画重点吧,Python面试题No1
为什么有这个系列的文章 一直想写一些更加基础的文章,但是总是想不到好的点子,最近到了就业季,一大堆学生面临就业了,正好,从Python的面试题出发,分析和解答一些常见的面试题,并且总结一些文字. 每一 ...
随机推荐
- Python time strptime() 函数根据指定的格式把一个时间字符串解析为时间元组
Python time strptime() 函数根据指定的格式把一个时间字符串解析为时间元组 import time dt=time.strptime('2019-08-08 11:32:23', ...
- Sitecore安全:访问权限
由于Sitecore使用Core数据库中的项来定义其用户界面,因此您可以对该数据库中的项应用访问权限,以控制对CMS功能的访问.最常见的是,将用户置于预定义的Sitecore客户端角色中 Siteco ...
- Scala Operators, File & RegExp
Operators Thread.`yield`() 反引号除了用于命名标识符,还可以在调用方法时避免冲突(yield 为 Scala 关键字,但也是 Thread 的方法) 中缀运算符(infix ...
- python实现Huffman编码
一.问题 利用二叉树的结构对Huffman树进行编码,实现最短编码 二.解决 # 构建节点类 class TreeNode: def __init__(self, data): "" ...
- SET QUOTED_IDENTIFIER选项对索引的影响
早上来到公司,发现用于整理索引碎片的Job跑失败了,查看job history,发现以下错误消息: ALTER INDEX failed because the following SET optio ...
- python 搭建 websocket server 发送 sensor 数据
搞了几天,顺便把代码贴这里,需要的 python 包: gevent,gevent-websocket,bottle,wiringpi-python 简单说明: - gevent 提供了支持 conc ...
- Windows 查看端口占用进程并关闭
当我们在运行一些软件需要特定软件(如tomcat)时,有可能会碰上端口被占用的情况,这时候我们可能就需要更改端口或把占用端口的进程结束掉,因为更换端口可能会导致当前环境产生一些的问题或是需要重新配置其 ...
- Ubuntu系统下搭建docke
linux内核版本依赖 kernel version >= 3.8 可以使用如下命令查看 uname -a | awk '{split($3, arr, "-"); prin ...
- [转]js获取iframe通过url传递的参数
1.前言 获取iframe的url路径:window.parent.document.getElementById("your-iframe-id").contentWindow. ...
- docker系列之一:初见docker
什么是docker? docker是目前linux最流行的容器技术,Docker 将应用程序与该程序的依赖,打包在一个文件里面.运行这个文件,就会生成一个虚拟容器.程序在这个虚拟容器里运行,就好像在真 ...