# 集合是无序的 是可变的 不能重复   允许数学运算  分散存储

# 创建
# collegel = {'哲学','经济学','法学','教育学'}
#
# # {'教育学', '经济学', '法学', '哲学'}
# print(collegel)
#
# # set
# collegel2 = set(['金融学','哲学','经济学','法学','教育学'])
# print(collegel2)
#
# # 使用set创建字符串集合
# collegel3 = set('中华人民共和国')
# # {'共', '华', '和', '中', '人', '民', '国'}
# print(collegel3)
#
# # 空集合的创建
# collegel4 = set();
# print(collegel4) # 数学运算
# 交集
# collegel = {'哲学','经济学','法学','教育学','文学'}
# collegel2 = set(['金融学','哲学','经济学','法学','教育学']) # 新集合
# college3 = collegel.intersection(collegel2)
# # {'哲学', '法学', '教育学', '经济学'}
# print(college3)
# # 原有集合
# collegel.intersection_update(collegel2)
# # {'哲学', '经济学', '教育学', '法学'}
# print(collegel) # 并集
# college4 = collegel.union(collegel2)
# # {'法学', '金融学', '经济学', '哲学', '教育学'}
# print(college4) # 差集
# college5 = collegel.difference(collegel2)
# # {'文学'}
# print(college5) # 双向差集
# collegel6 = collegel.symmetric_difference(collegel2)
# # # {'文学', '金融学'}
# # print(collegel6) # 关系操作
# s1 = {1,2,3,4,5,6}
# s2 = {6,5,4,3,2,1}
#
# # True 判断是否相等
# print(s1 == s2)
# s3 = {4,5,6,7}
# s4 = {1,2,3,4,5,6,7,8,9}
# # s3 是否是 s4 的子集 True
# print(s3.issubset(s4))
# # s4 是否是 s3 的父集 True
# print(s4.issuperset(s3)) # s5 = {5}
# s6 = {1,3,5,7,9}
# # 判断两个集合是否存在重复元素 False存在 True 不存在
# # False
# print(s5.isdisjoint(s6)) # 集合 增删改查
# collegel = {'哲学','经济学','法学','教育学','文学'}
# for i in collegel:
# print(i) # 判断元素是否在集合中 True
# print('哲学' in collegel) # 新增 add 一次只能添加一个元素
# {'教育学', '法学', '计算机学', '哲学', '文学', '经济学'}
# collegel.add('计算机学')
# print(collegel) # update 一次添加多个元素
# collegel.update(['生物学','工程学'])
# # {'哲学', '文学', '生物学', '教育学', '经济学', '法学', '工程学'}
# print(collegel) # 删除 如果删除不存在的会报错
# collegel.remove('文学')
# # {'法学', '经济学', '教育学', '哲学'}
# print(collegel) # 删除 如果不存在 则会忽略
# collegel.discard('生物')
# # {'法学', '哲学', '教育学', '经济学', '文学'}
# print(collegel) # 内置生成式
# 生成式语法: [被追加的语句 循环语句 或者判断语句] | {}
# 列表的生成式
lst1 = []
for i in range(10,20):
lst1.append(i * 10)
# [100, 110, 120, 130, 140, 150, 160, 170, 180, 190]
print(lst1)
lst2 = [i * 10 for i in range(10,20)]
# [100, 110, 120, 130, 140, 150, 160, 170, 180, 190]
print(lst2) lst3 = [i * 10 for i in range(10,20) if i % 2 == 0]
# [100, 120, 140, 160, 180]
print(lst3) # 字典生成式
lst5 = ['张三','李四','王五']
dict1 = { i+1:lst5[i] for i in range(0, len(lst5))}
# {1: '张三', 2: '李四', 3: '王五'}
print(dict1) # 集合生成式
set1 = {i*j for i in range(1,4) for j in range(1,4) if i == j }
{1, 4, 9}
print(set1)

Python 集合的各种操作 数学运算 关系操作 增删改查 生成式的更多相关文章

  1. python代理池的构建4——mongdb数据库的增删改查

    上一篇博客地址:python代理池的构建3--爬取代理ip 一.mongdb数据库的增删改查(Mongo_pool.py) #-*-coding:utf-8-*- ''' 实现代理池的数据库模块 ●作 ...

  2. 第三百零七节,Django框架,models.py模块,数据库操作——表类容的增删改查

    Django框架,models.py模块,数据库操作——表类容的增删改查 增加数据 create()方法,增加数据 save()方法,写入数据 第一种方式 表类名称(字段=值) 需要save()方法, ...

  3. 五 Django框架,models.py模块,数据库操作——表类容的增删改查

    Django框架,models.py模块,数据库操作——表类容的增删改查 增加数据 create()方法,增加数据 save()方法,写入数据 第一种方式 表类名称(字段=值) 需要save()方法, ...

  4. python连接MySQL pymysql模块,游标,SQL注入问题,增删改查操作

    pymysql模块 pymysql是用python控制终端对MySQL数据库进行操作的第三方模块 import pymysql # 1.连接数据库 client = pymysql.connect( ...

  5. 48.Python中ORM模型实现mysql数据库基本的增删改查操作

    首先需要配置settings.py文件中的DATABASES与数据库的连接信息, DATABASES = { 'default': { 'ENGINE': 'django.db.backends.my ...

  6. hibernate 一对多 多对一 关系表 增删改查大礼包ps二级查也有

    今天来到混元气功 这货大概的意思就是你中有我 我中有你 ps 这里就要说到维护关系 ps写这个用了我一下午.......也是刚刚好复习到这里 顺便就写写 注意:一般都在多方维护关系,至于是用单向还是用 ...

  7. ado.net的简单数据库操作(三)——简单增删改查的实际应用

    果然,在犯困的时候就该写写博客,写博客就不困了,哈哈! 上篇我记录了自己的SqlHelper的开发过程,今天记录一下如何使用这个sqlhelper书写一个具有简单增删改查的小实例啦. 实例描述:在数据 ...

  8. C# 数据操作系列 - 12 NHibernate的增删改查

    0. 前言 上一篇<C# 数据操作系列 - 11 NHibernate 配置和结构介绍> 介绍了Nhibernate里的配置内容.这一篇将带领大家了解一下如何使用NHIbernate.之前 ...

  9. 【练习】Python第四次:实现对文件的增删改查

    一,实现对文件的增删改查 (一),三级菜单的处理结构及退出技巧:使用TAG标记 tag=True while tag: print('leve1') choice=input("level1 ...

随机推荐

  1. C语言写数据库(三)

    遇到的问题以及解决思路方法 1.外部导入数据库文件 进入mysql,创建数据库sh_robot source /home/exbot/sh_robot.sql 查看数据库编码格式 show varia ...

  2. R_Studio(学生成绩)数据相关性分析

    对“Gary.csv”中的成绩数据进行统计量分析 用cor函数来计算相关性,method默认参数是用pearson:并且遇到缺失值,use默认参数everything,结果会是NA 相关性分析 当值r ...

  3. 14.多线程设计模式 - Master-Worker模式

    多线程设计模式 - Master-Worker模式 并发设计模式属于设计优化的一部分,它对于一些常用的多线程结构的总结和抽象.与串行相比并行程序结构通常较为复杂,因此合理的使用并行模式在多线程并发中更 ...

  4. scrum例会报告+燃尽图01

    此作业要求参见:https://edu.cnblogs.com/campus/nenu/2019fall/homework/9954 一.小组情况 组长:贺敬文组员:彭思雨 王志文 位军营 徐丽君队名 ...

  5. Docker报错: TLS handshake timeout”。

    Docker 默认拉取国外镜像,换成国内就搞定. 为了永久性保留更改,您可以修改 /etc/docker/daemon.json 文件并添加上 registry-mirrors 键值. {  &quo ...

  6. leetcode-easy-design-155 Min Stack

    mycode   21.48% class MinStack(object): def __init__(self): """ initialize your data ...

  7. [Java]将算术表达式(中序表达式Infix)转成后续表达式Postfix

    Inlet类: package com.hy; import java.io.BufferedReader; import java.io.IOException; import java.io.In ...

  8. 1.5 log4j使用教程

    日志是应用软件中不可缺少的部分,Apache的开源项目log4j是一个功能强大的日志组件,提供方便的日志记录.在apache网站:jakarta.apache.org/log4j 可以免费下载到Log ...

  9. Nature/Science 论文阅读笔记

    Nature/Science 论文阅读笔记 Unsupervised word embeddings capture latent knowledge from materials science l ...

  10. 在 manifest 和代码中如何注册和使用 BroadcastReceiver?

    在清单文件中注册广播接收者称为静态注册,在代码中注册称为动态注册.静态注册的广播接收者只要 app 在系统中运行则一直可以接收到广播消息,动态注册的广播接收者当注册的 Activity 或者 Serv ...