qfxx第二周3作业

#/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"))
上一篇:PAT乙级1027


下一篇:71JS原生:统计字符串重复