美文网首页
6-8Python之 set的特点

6-8Python之 set的特点

作者: OoYoO | 来源:发表于2017-12-07 16:54 被阅读7次

set的内部结构和dict很像,唯一区别是不存储value,因此,判断一个元素是否在set中速度很快。

set存储的元素和dict的key类似,必须是不变对象,因此,任何可变对象是不能放入set中的。

最后,set存储的元素也是没有顺序的。

set的这些特点,可以应用在哪些地方呢?

星期一到星期日可以用字符串'MON', 'TUE', ... 'SUN'表示。

假设我们让用户输入星期一至星期日的某天,如何判断用户的输入是否是一个有效的星期呢?

可以用** if 语句**判断,但这样做非常繁琐:

x = '???' # 用户输入的字符串
if x!= 'MON' and x!= 'TUE' and x!= 'WED' ... and x!= 'SUN':
    print 'input error'
else:
    print 'input ok'

注意:if 语句中的...表示没有列出的其它星期名称,测试时,请输入完整。

如果事先创建好一个set,包含'MON' ~ 'SUN':

weekdays = set(['MON', 'TUE', 'WED', 'THU', 'FRI', 'SAT', 'SUN'])

再判断输入是否有效,只需要判断该字符串是否在set中:

x = '???' # 用户输入的字符串
if x in weekdays:
    print 'input ok'
else:
    print 'input error'

这样一来,代码就简单多了。

任务
月份也可以用set表示,请设计一个set并判断用户输入的月份是否有效。

相关文章

  • 6-8Python之 set的特点

    set的内部结构和dict很像,唯一区别是不存储value,因此,判断一个元素是否在set中速度很快。 set存储...

  • JAVA基础---Set集合 泛型

    #一.Set集合 ##01 Set集合概述和特点 总结: * Set集合的特点 * 不允许存储重复的元素 * 没有...

  • 集合(二)~Set

    一、Set集合概述和特点 1. Set集合概述和特点 java.util.Set 接口和 java.util.Li...

  • 33-Python之 set的特点

    set的内部结构和dict很像,唯一区别是不存储value,因此,判断一个元素是否在set中速度很快。 set存储...

  • 027-Python之 set的特点

    set的内部结构和dict很像,唯一区别是不存储value,因此,判断一个元素是否在set中速度很快。 set存储...

  • Set集合的特点

    1.存入Set的每个元素都必须是唯一的,Set不保存重复元素,加入Set的元素必须定义equals()方法以确保对...

  • Map与Set

    一、Set接口的特点 使用HashSet存储字符串并遍历 Set set = new HashSet ();//...

  • 四 集合——第六节 Set集合

    1、Set 接口介绍 java.util.Set 接口extends Collection 接口 特点: 无序, ...

  • Java集合总结:Set集合

    Set集合(HashSet是典型实现) set集合特点:1.无序性:set集合是无序的2.不可重复:set集合是不...

  • Map & Set

    Map & Set 本篇整理自:ECMAScript 6 入门 Set Set 数据结构, 特点: 1.类似于数组...

网友评论

      本文标题:6-8Python之 set的特点

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