2019-06-27:字典元组列表集合混合练习

#encoding=utf-8
"""
1.写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,
并将其作为新列表返回给调用者
"""
def get_item(arr):
    if isinstance(arr,(list,tuple)):
        new_arr=[]
        for i in range(len(arr)):
            if i%2!=0:
                new_arr.append(arr[i])
            else:
                continue
        return new_arr

if __name__=="__main__":
    print(get_item(['a',1,2,'r','h','p']))
    print(get_item(('a','s','m','n',1)))
#encoding=utf-8
"""
2.写函数,检查传入字典的每一个value的长度,如果大于2,
那么仅保留前两个长度的内容,并将新内容返回给调用者
"""
def getDictValue(dic):
    if isinstance(dic,dict):
        newValue={}
        for k, v in dic.items():
            if isinstance(v,(tuple,str,list)):
                newValue[k]=v[:2]
            elif isinstance(v,int):
                newValue[k] =str(v)[:2]
            elif isinstance(v,set):
                setList=list(v)
                newValue[k]=setList[:2]
        return newValue
    else:
        state="请输入字典列表"
        return state
if __name__=="__main__":
    print(getDictValue({1:'asd',2:3,3:'fghj',5:'qwerty'}))
    print(getDictValue({1: 'asd', 2:{1,2,3}, 3: ('f','g','h','j'), 5: ['q','w','e','rty']}))
    print(getDictValue([1]))

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值