练习题汇总
设计一个函数,判断用户传入的对象(字符串、列表、元组)长度是否大于5,若是返回True,否则返回False
def islength(obj):
# 判断对象的类型
if type(obj) in [str,list,tuple]:
if len(obj) > 5:
return True
else:
return False
设计一个函数,检查用户传入的对象(字符串、列表、元组)的每一个元素是否含有空内容
【字符串中含有空格,列表与元组中函数有空串】。
若含有则返回True,否则返回False
”hello world“ [12,34,"",23]
def hasspace(obj):
if type(obj) == str:
if " " in obj:
return True
else:
return False
elif type(obj) in [list,tuple]:
if "" in obj:
return True
else:
return False
从控制台输入两个正数,求这两个正数的最大公约数,与最小公倍数
注意:最大公约数的公式:
m % n = r ,m = n n = r ,r == 0 输出m ,若不为0则继续循环
最小公倍数的公式:最小公倍数 = 两个正数的乘积/最大公约数
def getyuebei(m,n):
ji = m*n
r = None
while r != 0:
r = m%n
m = n
n = r
return m,ji/m
对列表进行冒泡排序【函数】
def bubble(list1):
for i in range(1,len(list1)):
for j in range(len(list1)-i):
if list1[j] > list1[j+1]:
list1[j],list1[j+1]=list1[j+1],list1[j]
return list1
设计一个函数,函数的功能登录的功能:
登录user password,当user等于admin 并且密码等于"123456"的时候显示登录成功,否则登录失败,最多三次。
def login():
for x in range(1,4):
user = input("请输入用户名:")
password = input("请输入密码:")
if user == "admin" and password == "123456":
print("登录成功")
return True
else:
print("用户名或者密码错误,您还剩余%d次机会"%(3-x))
else:
print("三次输入错误,卡已锁定")
return False
实现排序的功能,默认按照升序排列,当reverse=True降序
mysort(1,2,3,4,5,reverse=True)
def mysort(*args,reverse=False):
#转为list
args = list(args)
for i in range(1,len(args)):
for j in range(len(args)-i):
if args[j]>args[j+1]:
args[j],args[j+1] = args[j+1],args[j]
# 判断排序方式
if reverse:
# 降序排列
return tuple(args[::-1])
else:
#升序
return tuple(args)