我的编程空间,编程开发者的网络收藏夹
学习永远不晚

python,集合

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

python,集合


************************集合***********************

总结
可变数据类型: 列表, 字典, 集合
不可变数据类型: 数值类型, 字符串, 元组
- 可变数据类型实现某个功能, 直接改变可变的数据类型;
- 不可变数据类型实现某个功能,需要将结果赋值给另外一个变量;
是否实现for循环
可迭代数据类型: str, list, tuple, dict, set
不可迭代数据类型:数值类型
是否支持索引,切片, 重复和连接特性
有序的数据类型: str, list, tuple
无序的数据类型: dict, set


集合set的定义
集合是一个无序的,不重复的数据组合。

若花括号里面是空,是字典型
In [2]: type(set)
Out[2]: dict

In [1]: set = {}

*)集合的定义
1.

In [16]: set = {1,2,3,1,2,3}

In [17]: set = {1,2,3,'hello',(1,2,3)}

In [18]: type(set)
Out[18]: set



2.工厂法
工厂法定义集合时,括号里是可迭代对象,eg:数值类型不可以;

In [7]: lh = set()  定义空列表


*)set的应用场景
集合是一个无序的,不重复的数据组合。

• 列表去重
去重法一:
-转换为集合数据类型;set(列表)
>>> list = [1,2,2,3,4,3,4,5]
>>> s = set(list)
>>> print s
set([1, 2, 3, 4, 5])

Screenshot from 2018-01-08 13-19-18.png


去重法二:
-字典法;


In [3]: list = [1,2,3,4,3,2,1,2]

In [4]: dict = {}.fromkeys(list)

In [5]: print dict
{1: None, 2: None, 3: None, 4: None}


*)集合的特性
-集合是无序的,不重复的数据类型
-因此不支持索引,不支持切片,不支持重复,不支持连接;
-支持成员操作符;
-支持for循环;

Screenshot from 2018-01-08 13-34-29.png


Screenshot from 2018-01-08 13-36-04.png


*)集合的增删改查


***集合的增加

In [12]: set.add(5)  #add增加


Screenshot from 2018-01-08 13-32-52.png

In [24]: set.update([5,6]) #update增加


Screenshot from 2018-01-08 13-38-57.png

***集合的删除

s.remove()
删除集合中指定的元素,如果不存在,则报错

• s.pop()
随机删除集合中的某个元素,并返回删除的元素

set.discard()
删除集合指定元素,如果不存在,do nothing;

set.clear()
清空集合元素



Screenshot from 2018-01-08 13-41-16.png


Screenshot from 2018-01-08 13-45-42.png

*)集合的其他操作

显示集合set的长度
In [14]: s
Out[14]: {2, 3, 'cd', 'ef'}

In [15]: len(s)
Out[15]: 4

Screenshot from 2018-01-08 19-59-48.png

• s.copy()
In [6]: set = {1,2,3,'a','b'}
集合的浅拷贝
In [7]: set.copy()
Out[7]: {1, 2, 3, 'a', 'b'}

• 关系测试:如交集、差集、并集的关系测试

 s1 & s2  #并集

s1.intersection(s2) #并集

s1 | s2   #交集

s1.union(s2)  #交集

s1 - s2  #1与2的差集

s2 - s1   #2与1的差集

s1 ^ s2  #对等差分


Screenshot from 2018-01-08 20-08-00.png


Screenshot from 2018-01-08 20-12-42.png


In [27]: s1.issuperset(s2) #1是2的父集

In [28]: s2.issubset(s1)  #2是1的子集

Screenshot from 2018-01-08 20-15-37.png

In [29]: s1.isdisjoint(s2)



应用:
(华为机试题)题目描述
明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性, 他先用计算机生成了N个1到1000
之间的随机整数(N≤1000), N是用户输入的,对于 其中重复的数字,只保留一个,把其余相同的数去
掉,不同的数对应 着不同的学生的学号。然后再把这些数从小到大排序,按照排好的顺 序去找同学做调
查。请你协助明明完成“去重”与“排序”的工作;
提示:
生成随机数,
import random
random.randint(1,1000)
列表的去重


Screenshot from 2018-01-08 20-45-12.png




Screenshot from 2018-01-08 20-45-28.png




  1. 题目描述
    现在IPV4下用一个32位无符号整数来表示,一般用点分方式来显示,点将IP地址分成4个部分,每个部分为8位,表示成一个无符号整数(因此不需要用正号出现),如10.137.17.1,是我们非常熟悉的IP地址,一个IP地址串中没有空格出现(因为要表示成一个32数字)。
    现在需要你用程序来判断IP是否合法。

    输入描述:输入一个ip地址
    输出描述:返回判断的结果YES or NO


    示例1
    输入: 10.138.15.1
    输出: YES


    #!/usr/bin/env python
    #coding:utf-8
    ip = raw_input('输入一个ip:')
    ip1 = ip.split('.')
    if len(ip1)!=4:
        print "NO"
    else:
        for i in ip1:
          if not 0<=int(i)<=255:
              print "NO"
              break
        else:
          print "YES"





免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

python,集合

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

python---集合

集合是一个无序的,不重复的数据组合,它的主要作用是:1.去重,把列表变为集合就去重了。2.关系测试,测试两组数据之前的差集,交集,并集等关系#创建两个集合list_1 = set([1,3,4,5,6,6,5,7,9])list_2 = s
2023-01-31

python,集合

************************集合***********************总结可变数据类型: 列表, 字典, 集合不可变数据类型: 数值类型, 字符串, 元组- 可变数据类型实现某个功能, 直接改变可变的数据类型;-
2023-01-31

python集合

1.集合的定义   * 集合是无序的,不重复的数据组合。  * 集合里不能定义列表。      2.集合的关系测试操作   3.集合的的添加   haha1.add("ss")   在集合后添加一项    haha1.update(["sd
2023-01-31

python 集合

1、定义集合是一个无序的,不重复的数据组合,它的主要作用如下:去重,把一个列表变成集合,就自动去重了;关系测试,测试两组数据之间的交集,差集,并集等关系。2、增加元素:s.add(): 吧括号里的元素添加到集合s当中,如果添加的元素已经在列
2023-01-31

python 集合

集合是一个无序的,不重复的数据组合,它的主要作用如下:去重,把一个列表变成集合,就自动去重了关系测试,测试两组数据之前的交集、差集、并集等关系去重将列表转换为集合使用set()方法list_1=[1,2,4,5,2,6,7,4,8]list
2023-01-30

python-集合

Set (集合)1 Set 定义:set可以用{}表示,但是不能用s{}这样定义,如果这样写,python编辑器会默认为是字典。             这样定义就不会是字典,里面加一些内容。 2 元祖和列表是有序的,集合是无序的且集合中的
2023-01-31

Python之集合

集合概念集合操作集合概念集合是一类具有相类似属性的集合,一个包含不同元组的无序集(不支持排序操作),实现关系测试和剔除重复记录,支持union并集、∩交集、差集difference、对称差操作;特点:无序、元素唯一,不支持索引集合操作集合创
2023-01-31

python set(集合)

set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key。集合是一个无序的,不重复的数据组合,它的主要作用如下:去重,把一个列表变成集合,就自动去重了关系测试,测试两组数据之前的
2023-01-31

python怎么向集合中添加集合

在 Python 中,集合是一种无序且不重复的数据类型。要向集合中添加集合,可以使用 `update()` 方法。下面是一个示例:```python# 创建两个集合set1 = {1, 2, 3}set2 = {4, 5, 6}# 将 se
2023-09-27

Python学习 :集合

集合 Set集合的创建集合的创建只有一种方式集合中的元素必须是不可变的数据类型集合是无序的,可以通过 for 循环来遍历或者迭代器进行筛选s=set('xiaoming')s1=['alex','mike','alex','mary']s2
2023-01-30

python 集合、函数

*集合:    set:持有一系列元素,但是set元素没有重复,并且无序     如何创建:set()并传入一个list,list的元素将作为set 的元素。s=set(['a','b','c'])print(s)    //set(['a
2023-01-31

python自学——集合

#皇城根儿#集合:是无序的、不重复的;1、去重;2、关系测试#创建集合#创建数字集合number=set([1,3,5,7,9]) #数字型集合str_type=set(["im","is","are"])#字符串集合#列表转换成集合lis
2023-01-30

python中的集合

一、目录1、集合概述2、关于集合的操作符、关系符号3、集合的一系列操作(添加、更新、访问、删除)4、关于集合的内建函数、内建方法5、小结二、集合概述集合(set):把不同的元素组成一起形成集合,是python基本的数据类型。集合元素(set
2023-01-31

python基础:集合-set()

一、定义:集合是一个无序的,没有重复元素的序列。可以用来去重。使用{},和set()定义空集必须使用set()来定义可以set任何可迭代的对象string = 'this is string!'num = range(1, 11)list 
2023-01-31

python字典和集合

1. 字典字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据。python对key进行哈希函数运算,根据计算的结果决定value的存储地址,所以字典是无序存储的,且key必须是可哈希的。可哈希表示key必须是
2023-01-31

Python面试题集合

Python是如何进行内存管理的? http://developer.51cto.com/art/201007/213585.htm (没看懂) 什么是lambda函数?它有什么好处? http://www.kuqin.com/divein
2023-01-31

Python基础——集合(set)

集合可以去除掉列表中重复的元素。 创建 list1=[123,123,456,789]list1=set(list1)list1set1=set()type(set1)set1=set([123,123,456,456,789])set1s
2023-01-31

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录