python题库检查用户传入的对象

本文介绍了几个Python函数,用于检查输入对象(字符串、列表、元组)的长度、内容以及进行相应的处理。函数包括:判断长度是否大于5、检查元素是否为空、限制列表长度为2、获取奇数索引元素、处理字典中值的长度。这些函数展示了Python在数据处理上的灵活性和实用性。
摘要由CSDN通过智能技术生成

#52、写函数,判断用户传入的对象(字符串、列表、元组)长度是否大于5。

def obj_len(c):
    if not isinstance(c,(str,list,tuple)):
        print("chuanru canshu cuowu ")
        return
    else:
        if len(c)>=5:
            return True
        else:
            return False

if __name__ == '__main__':
    print(obj_len("weefse"))
    print(obj_len(123))

#53、写函数,检查用户传入的对象(字符串、列表、元组)的每一个元素是否含有空内容。

def checkout(param):
    if not isinstance(param,(list,tuple,str)):
        print("qingshuru fuhe yaoqiude neirong")

    else:
        if param=="":
            return False
        else:
            print("不含有空内容")
            return True

if __name__ == '__main__':
    # print(checkout("123"))
    print(checkout(""))

#54、写函数,检查传入列表的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。

def count_length(param):
    if not isinstance(param,list):
        print("请输入列表内容!")
        return
    else:
        if len(param)>2:
            return param[:2]
        else:
            return param
if __name__ == '__main__':
    print(count_length([3,2,1]))
    print(count_length([1]))

#55.写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新列表返回给调用者。

def check_out(param):
    new_list=[]
    if not isinstance(param,(list,tuple)):
        print("请输入列表或者元组")
        return
    else:
        for i in range(len(param)):
            if i%2 ==1:
                new_list.append(param[i])
    return new_list
            
if __name__ == '__main__':
    print(check_out([1,2,3,4]))
    print(check_out([1]))

#56、写函数,检查传入字典的每一个value的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。

def dict_value(d):
    if not isinstance(d,dict):
        print("请输入字典的格式")
        return
    else:
        for k,v in d.items():
            if isinstance(v,(list,tuple,str,dict)):
                if len(v)>2:
                    d[k]=v[:2]
            elif isinstance(v,int):
                if len(str(v))>2:
                    d[k]=int(str(v)[:2])
            elif isinstance(v,set):
                temp_list=[]
                i = 0
                for item in v:
                    temp_list.append(item)
                    i +=1
                    if i ==2:
                        break
                d[k] =set(temp_list)
    return d

if __name__ == '__main__':
    d = {"a":{1,2,3,4},"b":"xyzccc","c":123456}
    print(dict_value(d))

#57、写函数,利用递归获取斐波那契数列中的第 10 个数,并将该值返回给调用者。

def fibonacci(n):
    if n == 0 or n == 1:
        return 1

    else:
        return fibonacci(n-1)+fibonacci(n-2)
if __name__ == '__main__':
    print(fibonacci(9))

#58、写函数,,用户传入修改的文件名,与要修改的内容,执行函数,完成整个文件的批量修改操作

def modify_file(file_name,source,dest):
    with open(file_name,"r") as fb:
        content = fb.read()

    with open(file_name,"w") as fb:
        fb.write(content.replace(source,dest))

if __name__ == '__main__':
    modify_file("a.txt","hello","world")
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值