集合(set)

  集合其实就是一个无序的,自动去重的数据集合,它主要的作用是用来去重和进行关系测试,集合的定义方法如下:

name=set("czp") /name=set({1,2,3,4})
print(type(name))
运行结果:
{'z', 'c', 'p'} /{9, 10, 3, 5} 打印结果可以看到是元素是无序的
<class 'set'> 使用type()方法打印name的类型为set

  通过下面这个例子 进一步说明集合是去重的

name=set("czpcc")
print(name)
运行结果:
{'c', 'p', 'z'}

  集合的一些基本方法如下所示:

  1.add():添加,仅适用于添加单个元素

s = set([3,5,9,10])
s.add("x") 添加一个元素,注意:add方法只能添加单个元素,添加多个元素需要用update方法
print(s)
运行结果:
{3, 5, 9, 10, 'x'}

  2.update():更新,适用于添加多个元素

s = set([3,5,9,10])
s.update([1,2]) 通过update方法添加多个元素,可以使用[]列表的形式,也可以使用“”,“”这种,的形式隔开添加
print(s)
运行结果:
{1, 2, 3, 5, 9, 10}

  3.clear():清空

s = set([3,5,9,10])
s.clear() 移除集合中的所有元素

  4.copy() :深浅copy会在后面的博客中详细说。

  5.pop():删除(随机删)

s = set([3,5,9,10])
s.pop() pop()方法,随机删除集合中的元素,如果集合为空,程序报错
print(s)
运行结果:
{10, 3, 5}

  6.remove():删除(指定元素删除)

s = set([3,5,9,10])
s.remove() 指定元素删除,如果为空或者该元素不存在,程序报错
print(s)
运行结果:
{9, 10, 5}

  上面提到了,集合的主要功能是去重和关系测试,对于集合的关系测试使用方法如下所示:

  1.交集,可以如下两种方式表示

s = set([3,5,9,10])
v = set([3,4,9,11])
print(s&v)
print(s.intersection(v)) 求两个集合的交集
运行结果是一样的:
{9, 3}
{9, 3}

  2.并集,用如下两种方式表示

s = set([3,5,9,10])
v = set([3,4,9,11])
print(s|v) 求两个集合的并集
print(s.union(v))
运行结果:
{3, 4, 5, 9, 10, 11}
{3, 4, 5, 9, 10, 11}

  3.差集,用如下两种方式表示

s = set([3,5,9,10])
v = set([3,4,9,11])
print(s-v) 求两个集合的差集
print(s.difference(v))
运行结果如下:
{10, 5}
{10, 5}

  另外还有 issubset()-判断子集、issuperset()-判断父级等方法,返回的值为布尔值。

二:字符串格式化补充

  1.打印浮点数

print("小数为 %.2f"%88.87654321)   通过%f来做浮点数的占位符,2代表保留的小位数
运行结果: 小数为 88.88

  2.打印百分比

print("percent %.2f %%"%88.87654321)  通过两个%来显示出百分比
运行结果为:
percent 88.88 %

Pyhton编程(六)之基本数据类型-集合(补充)的更多相关文章

  1. Python_数据类型的补充、集合set、深浅copy

    1.数据类型的补充 1.1 元组 当元组里面只有一个元素且没有逗号时,则该数据的数据类型与括号里面的元素相同. tu1 = ('laonanhai') tu2 = ('laonanhai') prin ...

  2. python 的基础 学习 第八天数据类型的补充 ,集合和深浅copy

    1,数据类型的补充: 元组()tuple,如果只有元素,并且没有逗号,此元素是什么数据类型,该表达式就是什么数据类型. tu = ('rwr') print(tu,type(tu)) tu = ('r ...

  3. python基础之数据类型操作补充,集合及其操作,深浅拷贝

    内容概要: 数据类型操作补充 集合及其操作 深浅拷贝1.基础数据类型补充 1.1字符串的操作补充li = ["李嘉诚", "麻花藤", "黄海峰&qu ...

  4. 19-3-7Python中小数据池、数据类型的补充、set集合

    一.小数据池(了解) “id”    获取内存地址 “==”  比较等号两端的值是否相等 “is”    身份运算:判断的是两个对象的内存地址是否相同. 代码块:一个文件就是一个代码块.(函数.类都是 ...

  5. 基础数据类型汇总补充;集合set ;深浅copy

    首先回顾: 小数据池:int -5~256str 特殊字符,*数字20 ascii : 8位 1字节 表示1个字符unicode 32位 4个字节 表示一个字符utf- 8 1个英文 8位,1个字节 ...

  6. 基础数据类型汇总补充,python集合与深浅拷贝

    一.基础数据类型汇总补充 1.查看str所有方法方式 2.列表:在循环中删除元素,易出错或报错(飘红) lis = [11,22,33,44,55] # for i in range(len(lis) ...

  7. 常用对象API、附加:集合补充

    基本数据类型对象包装类: 为了方便操作基本数据类型值,将其封装成了对象,在对象中定义了属性和行为丰富了该数据的操作. 用于描述该对象的类就称为基本数据类型对象包装类. byte——Byte short ...

  8. 百万年薪python之路 -- 基础数据类型的补充

    基础数据类型的补充 str: 首字母大写 name = 'alexdasx' new_name = name.capitalize() print(new_name) 通过元素查找下标 从左到右 只查 ...

  9. Python基础知识(六)------小数据池,集合,深浅拷贝

    Python基础知识(六)------小数据池,集合,深浅拷贝 一丶小数据池 什么是小数据池: ​ 小数据池就是python中一种提高效率的方式,固定数据类型使用同一个内存地址 代码块 : ​ 一个文 ...

  10. 【转载】C#编程中两个List集合使用Intersect方法求交集

    在C#语言程序设计中,List集合是常用的集合数据类型,在涉及集合类型的运算中,有时候我们需要计算2个List集合中共有的数据,即对2个List集合求交集运算.此时可以使用C#语言提供的Interse ...

随机推荐

  1. (转)java内存泄漏的定位与分析

    转自:http://blog.csdn.net/x_i_y_u_e/article/details/51137492 1.为什么会发生内存泄漏 java 如何检测内在泄漏呢?我们需要一些工具进行检测, ...

  2. javascript 之作用域-06

    作用域 作用域是指变量和函数可访问范围,他规定了如何查找变量,也就是确定当前执行代码对变量的访问权限. 作用域有两种工作模式: 静态作用域 :又称为词法作用域,在编译阶就可以决定变量的引用,由程序定义 ...

  3. java笔记04: String的理解与运用

    一,“==”与equals() 运行以下代码,如何解释其输出结果? public class StringPool { public static void main(String args[]) { ...

  4. LeetCode 405. Convert a Number to Hexadecimal (把一个数转化为16进制)

    Given an integer, write an algorithm to convert it to hexadecimal. For negative integer, two’s compl ...

  5. web 开发中的路由是什么意思

    路由: 就是一个路径的解析,根据客户端提交的路径,将请求解析到相应的控制器上 从 URL 找到处理这个 URL 的类和函数

  6. Django开发小型站之前期准备(一)

    语言:python3.5 工具:JetBrains PyCharm virtualenvwrapper优点: 1.使不同的应用开发环境独立 2.环境升级不影响其他应用,也不会影响全局的python环境 ...

  7. Android 开发笔记___SQLite__优化记住密码功能

    package com.example.alimjan.hello_world; /** * Created by alimjan on 7/4/2017. */ import com.example ...

  8. 使用(Unicode字符)让inline水平元素换行

      为了实现上面效果: <dl>     <dt>提问:</dt><dd>为什么没有男朋友?</dd> </dl> <dl ...

  9. mac android apk反编译

    在mac os系统上反编译android apk,首先需要准备好以下3个文件: 1.apktool:https://ibotpeaches.github.io/Apktool/install/ 2.d ...

  10. Problem B: 开个餐馆算算账

    Description 小明创业了!他开了一家餐馆,每天客人还挺多的.每天下班后,他都要算算今天总共收入多少钱,但是手工算太麻烦了,所以他来向你求助了. Input 第1行N>0,表示餐馆提供N ...