#/usr/bin/env python
#-*- coding: utf-8 -*-
# Editer:jokersyc
#1.设计一个函数,判断用户传入的对象(字符串、列表、元组)长度是否大于5,
# 若是则返回True,否则返回False
#思路:先判断args的长度,再判断其类型是否为str,再判断args内元素的长度
def lenc(*args):
if len(args)==1:
if type(args[0])==str:
return False
else:
if len(args[0])<=5:
return False
else:
if len(args)<= 5:
return False
return True
print(lenc([1,23,4,55,5,3]))
# 2.设计一个函数,检查用户传入的对象(字符串、列表、元组)的每一个元素是否含有空内容
# 【字符串中含有空格,列表与元组中函数有空串】。若含有则返回True,否则返回False
# "hello world" [12,34,"",23]
#思路:先判断args的长度,再判断其类型是否为str,再循环取出args内元素的元素判断是否为空内容
def judge(*args):
if len(args)==1:
if type(args[0])==str:
if args[0]=="" or " ":
return False
else:
for a in args[0]:
if a=="":
return False
return True
print(judge("sdsd"))
# max()函数的功能补全
# 传递1个,必须可迭代对象,返回可迭代对象中的最大值
# 若传递多个,必须number或str ,返回最大值
#思路:先判断args的长度,再判断其类型是否为可迭代类型,再循环找最大值
from collections.abc import Iterable #判断对象是否为可迭代对象的库函数
def sun(*args):
if len(args)==1:
if isinstance(args,Iterable):
maxnum=args[0][0]
for a in args[0]:
if a>maxnum:
maxnum=a
return maxnum
else:
print("请输入一个可迭代对象")
else:
maxnum=args[0]
for a in args:
if a > maxnum:
maxnum = a
return maxnum
# print(args)
print(sun([1,23,4,5,4,5,6,6,7]))
emm,今天的作业太少了,没有一点挑战性…明天讲的东西是我在学校时没学过的,应该是很有意思的.
顺便附上今天在课上敲的代码:
# from Include.day05.zuoye import maopao
#这个是调用我之前写的一个冒泡函数的代码.无视吧
# def sortt(list1,re=False):
# a=maopao(list1,re)
# print(a)
# sortt([9,8,7,6,5,4,56,78,43,21,1])
# sortt([9,8,7,6,5,4,56,78,43,21,1],True)
#返回输入的多个数字中的最大值
# def max1(*numb):
# maxnum=numb[0]
# for a in numb:
# if a>=maxnum:
# maxnum=a
# else:
# continue
# return maxnum
# print(max1(2,34,5,67,896,34213,45,55656,44,4,34,34,34,3445,55,5))
#仍然是比大小,但需要在不合理输入时提示
# from collections.abc import Iterable
# def sun(*args):
# if len(args)==1:
# if isinstance(args,Iterable):
# maxnum=args[0][0]
# for a in args[0]:
# if a>maxnum:
# maxnum=a
# return maxnum
# else:
# print("请输入一个可迭代对象")
# else:
# maxnum=args[0]
# for a in args:
# if a > maxnum:
# maxnum = a
# return maxnum
# # print(args)
#
# print(sun([1,23,4,5,4,5,6,6,7]))
#验证zip()函数的作用以及特殊用法
# dic1={1:"h",2:"b",3:"w"}
# list1=["h","b","w"]
# print(dict(zip(dic1.values(),dic1)))
# print(dict(zip(dic1.values(),list(dic1)[::-1])))
# from collections.abc import Iterable
# if isinstance(list(dic1).reverse(),Iterable):
# print("dd")
# else:print("gg") #由此可以发现list.reverse()返回的不是一个可迭代对象
#验证装饰器的作用
# def agec(func):
# def inner(age):
# if age >160 or age<0:
# print("见鬼了")
# else:
# print("我今年%d"%age)
# return inner
#
# @agec
# def age (age):
# print("我今年%d"%age)
#
# age(200)
#装饰器的简单应用
# def loginc(func):
# def inner(name,passwd):
# if 5<=len(name)<=8 and len(passwd)==6 and name[0].isalpha():
# a=func(name,passwd)
# return a
# else:
# print("用户名或密码错误")
# return inner
#
# @loginc
# def login(name,passwd):
# if name=="admin" and passwd=="123456":
# return True
# else:
# return False
#
# print(login("h(*dmin","123456"))