一、集合(set)

1.集合的特性:

  不同元素组成、元素是无序排列的可hash值

2.集合转为列表

s1 = {11,"hechouzi",(11,22,33)}
names = list(s1)
print(names)

3.集合的方法

(1)add 添加元素

s = {11,22,(1,2),"hechouzi"}
s.add("kobe")
print(s)

(2) clear 清空元素

s = {11,22,(1,2),"hechouzi"}
s.clear()
print(s)

(3) copy

s = {11,22,(1,2),"hechouzi"}
s1 = s.copy()
print(s1)

(4)pop 随机删除,remove 指定删除,没有报错 discard 指定删除,没有不会报错

s = {11,22,(1,2),"hechouzi"}
s.pop()
s.remove(11)
s.discard(10)
print(s)

4.关系测试

(1)intersection(&)求取交集

s1 = {11,22,33,"hechouzi"}
s2 = {22,33,"kobe"}
# s3 = s1.intersection(s2)
s3 = s1 & s2
print(s3)

(2)union(|) 求取并集

s1 = {11,22,33,"hechouzi"}
s2 = {22,33,"kobe"}
# s3 = s1.union(s2)
s3 = s1 | s2
print(s3)

(3) difference(-)求取差集

s1 = {11,22,33,"hechouzi"}
s2 = {22,33,"kobe"}
# s3 = s1.difference(s2)
s3 = s1 - s2
print(s3)

(4)symmetric_difference(^)求取交叉补集

s1 = {11,22,33,"hechouzi"}
s2 = {22,33,"kobe"}
# s3 = s1.symmetric_difference(s2)
s3 = s1 ^ s2
print(s3)

(5) xx.update 将得到的集合更新到s1

s1.intersection_update(s2)
print(s1)

(6)isdisjoint 无交集返回True

s1 = {11,22,33,"hechouzi"}
s2 = {44,55}
v = s1.isdisjoint(s2)

(7)issubset  s2是s1的子集返回True

s1 = {11,22,33,"hechouzi"}
s2 = {11,22}
v = s2.issubset(s1)
print(v)

(8)issuperset  s1是s2的父集返回True

s1 = {11,22,33,"hechouzi"}
s2 = {11,22}
v = s1.issuperset(s2)
print(v)

(9) update 更新多个值

s1 = {11,"hechouzi",(11,22,33)}
s1.update((22,33))
print(s1)

二、字符串拼接

1.%

(1)%s 字符串类型,%d整型数字,%.2f 浮点数,小数点后2位默认6位,% .2f%%,百分比

s = "I am %s,I am %d, percent %.2f, %.2f%%"%("hechouzi",25,42.8888,24.88888)
print(s

(2)字典

s = "I am %(name)s,I am %(age)d"%{"name":"hechouzi","age":25}
print(s)

2.format

  *列表  **字典

  :b 二进制  :o 八进制  :d  整型  :x  十六进制小写  :X  十六进制大写

s = "i am {},age{},{}".format("bigmouse",25,"dazui")
print(s)
s = "i am {},age{},{}".format(*["bigmouse",25,"dazui"])
print(s)
s = "i am {0},age{1},{1}".format("bigmouse",25,"dazui")
print(s)
s = "i am {2},age{1},{0}".format(*["bigmouse",25,"dazui"])
print(s)
s = "i am {name},age{age},{name}".format(name="bigmouth",age=25)
print(s)
s = "i am {name},age{age},{name}".format(**{"name":"bigmouth","age":25})
print(s)
s = "i am {0[0]},age{0[1]},{1[2]}".format([1,2,3],[11,22,33])
print(s)
s = "i am {:s},age {:d},length {:.3f}".format("dazui",24,2.1111)
print(s)
s = "i am {name:s},age {age:d},{length:.3f}".format(name="dazui",age=24,length=2.1111)
print(s)
s = "i am {name:s},age {age:d},{length:.3f}".format(**{"name":"dazui","age":24,"length":2.1111})
print(s)
s1 = "num1:{:b} {:o} {:d} {:x} {:X} {:.3%}".format(24,24,24,24,24,24.888888,)
print(s1)

Python开发——4.集合和字符串拼接的更多相关文章

  1. Python学习-用户输入和字符串拼接

      用户输入和字符串拼接 #用户输入和字符串拼接username=input("username:")age=int(input("Age:")) #转换整数型 ...

  2. python开发学习(元组、字符串、列表、字典深入)

    https://www.cnblogs.com/songqingbo/p/5129116.html(转载学习)

  3. 使用"+"进行字符串拼接

    本文来自:Hollis(微信号:hollischuang) 字符串,是Java中最常用的一个数据类型了.本文,也是对于Java中字符串相关知识的一个补充,主要来介绍一下字符串拼接相关的知识.本文基于j ...

  4. 为什么阿里巴巴不建议在for循环中使用"+"进行字符串拼接

    字符串,是Java中最常用的一个数据类型了.关于字符串的知识,作者已经发表过几篇文章介绍过很多,如: Java 7 源码学习系列(一)--String 该如何创建字符串,使用" " ...

  5. python开发学习-day01 (python安装与版本、字符串、字典、运算符、文件)

    *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* ...

  6. python字符串拼接

    Python字符串拼接 在Python的实际开发中,很多都需要用到字符串拼接,python中字符串拼接有很多,今天总结一下: 用+符号拼接 用%符号拼接 用join()方法拼接 用format()方法 ...

  7. Python开发——数据类型【字符串】

    字符串定义 字符串是一个有序的字符的集合,用于存储和表示基本的文本信息 在Python中加了引号的字符,都被认为是字符串! 单引号.双引号.多引号之间的区别? 答案:单双引号没有区别 多引号的作用? ...

  8. Day2 - Python基础2 列表、字符串、字典、集合、文件、字符编码

    本节内容 列表.元组操作 数字操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1. 列表.元组操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 ...

  9. python学习6—数据类型之集合与字符串格式化

    python学习6—数据类型之集合与字符串格式化 1. 使用id()可以查看一个变量的内存地址: name = 'alex' id(name) 2. 进制转换 十进制转换为二进制等: a = 10 # ...

随机推荐

  1. Mac 日常使用tips

    20180725: windows标准的键盘连接了mac如何映射键盘?最大的好处是可以向后删除,还可以一键PageUP, PageDown ref: https://support.apple.com ...

  2. IDEA run下output标签悬浮/弹出状态

    就是这样,在哪儿有一个恢复布局标签

  3. spring 之 property-placeholder 分析

    不难知道, property-placeholder 的解析是 PropertyPlaceholderBeanDefinitionParser 完成的, 但是 它仅仅是个parser , 它仅仅是读取 ...

  4. python中的多进程与多线程(二)

    1.使用多线程可以有效利用CPU资源,线程享有相同的地址空间和内存,这些线程如果同时读写变量,导致互相干扰,就会产生并发问题,为了避免并发问题,绝不能让多个线程读取或写入相同的变量,因此python中 ...

  5. Caffe:如何将图片数据转换成lmdb文件

    1 图片信息的转换 在caffe中经常使用的数据类型是lmdb或leveldb;不是常见的jpg,jpeg,png,tif等格式;因此,需要进行格式转换,通过输入你自己的图片目录(下有的大量图片)转换 ...

  6. Access restriction 问题解决

    最近导入新项目,导入所有用到的jar包,发现其中一个引用报错 import com.sun.istack.internal.Nullable; 具体信息如下: Access restriction: ...

  7. [C语言]进阶|程序结构

    ------------------------------------------------------------------------------------ 全局变量: // main.c ...

  8. API接口认证

    restful API接口可以很方便的让其他系统调用,为了让指定的用户/系统可以调用开放的接口,一般需要对接口做认证; 接口认证有两种方式: 1.认证的token当做post/get的参数,serve ...

  9. HTTPS数据传输过程简介

    HTTPS数据传输过程 1.客户端发起HTTPS连接握手 2.服务端收到HTTPS握手连接请求,与客户建立握手过程,和TCP的三次握手类似,并发送一系列的加密算法组合给客户端,与客户端协商加密算法组合 ...

  10. 7za命令报错Error: xxx is not supported archive

    问题: 执行7za命令时报错:Error: xxx is not supported archive   原因: 当前7za版本过低   直接执行7za可以看到当前版本: 7-Zip (A) [64] ...