美文网首页
06、元组的定义和常用操作

06、元组的定义和常用操作

作者: hnssyg | 来源:发表于2019-11-30 17:01 被阅读0次

    a = (1,3,5,7)

    b =4

    #filter(lambda x: x < 4, a)  # 取出a中小于4的元素

    print(list(filter(lambda x: x < b, a)))

    b =6

    print(list(filter(lambda x: x < b, a)))# 取出a中小于6的元素

    print(len(list(filter(lambda x: x < b, a))))# 取出a中小于6的元素的个数


    # 输入日期,输出对应生肖

    zodiac_name = (u'摩羯座',u'水瓶座',u'双鱼座',u'白羊座',u'金牛座',u'双子座',

    u'巨蟹座',u'狮子座',u'处女座',u'天秤座',u'天蝎座',u'射手座')

    zodiac_days = ((1,20), (2,19), (3,21), (4,21), (5,21), (6,22),

    (7,23), (8,23), (9,23), (10,23), (11,23), (12,23))

    (month, day) = (2,15)

    zodiac_day =filter(lambda x: x<=(month, day), zodiac_days)

    #print(list(zodiac_day))

    # [(1,20)]

    zodiac_len =len(list(zodiac_day)) %12

    print(zodiac_name[zodiac_len])

    # 取模12的原因:当输入的元组范围大于12月23日,取得的元组长度为12,python元组下标是0~11,而不是1~12,因此使用12求模的方式,避免下标越界


    import time

    num = [1,2,3,4,5,6]

    a =iter(num)# 把列表转换成迭代器

    print(type(num))

    print(type(a))

    print(list(a))# 一次返回所有内容

    print(list(a))# 空了

    # filter()函数返回类型是迭代器,使用list函数可以一次性将filter函数返回的内容数据全部取出来,第二次再取数据自然会为空

    b =filter(lambda x: x <=5, num)

    print(b.__next__())# 取第一个

    print(b.__next__())# 取第二个

    print(list(b))# 全取出来

    time.sleep(1)# 停1s便于观察

    b.__next__()# 返回一个StopIteration异常,告诉用户已经没有可以取的数据了


    拓展阅读:字符编码笔记:ASCII,Unicode和UTF-8

    相关文章

      网友评论

          本文标题:06、元组的定义和常用操作

          本文链接:https://www.haomeiwen.com/subject/onyowctx.html