#集合本身就像无值的字典
list1 = set([1,2,3,4])
list2 = {1,2,3,4}
print('list1 == list2?:',list1==list2)#list1 == list2?: True
print('list1 is list2?:',list1 is list2)#list1 is list2?: False #集合是无序的
S = set('spam')
print(S)#输出的结果为{'m', 'p', 'a', 's'}
S.add('alot')
print(S)#{'alot', 'p', 'a', 's', 'm'} #集合支持逻辑操作
S1 = {1,2,3,4}
print(S1 &{1,3})
print({1,5,3,6}|S1)
print(S1-{1,3,4})
print(S1>{1,3})#S1>{1,3,5}为false #在Python中{}仍是一个字典,空的集合必须通过内置函数set来创建,并以同样的方式来创建
print(S1-{1,2,3,4})
print(type({}))
S2 = {}
S3 = set()
print(type(S2))#结果为dict
print(type(S3))#结果为set
print(type([1,2,3]))#结果为list
print(type((1,2,3)))#结果为tuple #不可变限制与冻结集合
#S3.add([1,2,3])
#S3.add({'a':1,'b':2})
#列表和字典不能嵌入到集合中
S3.add((1,2,3))
print(S3)
S3 = frozenset()
#S3.add((1,2,3)),frozenset()为不可变集合 #集合的解析
S4 = {x**2 for x in [1,2,3,4]}
print(type(S4))
S4 = {x for x in 'sapm'}
print(S4)
S4 = {c*4 for c in 'spam'}
print(S4)
S4 = {c*4 for c in 'spamham'}#set集合石无序的,不可重复的
print(S4)
L = [1,2,1,3,2,4,5]
print(L)
L = list(set(L))#清除重复项
print(L)
print(type(True))#class问bool
print('True == 1?:',True == 1)#True == 1?: True 相同的值
print('True is 1?:',True is 1)#True is 1?: False但是是不同的类型
print(True or False)#True 等于1 or 0
print(True+4)#结果为5,em。。。。说好的强类型语言呢

字符串的抑制转义

  当我们需要打开一个文件:myfile = open('C:\new\text.txt','w')中的’\n‘与'\t'会被转义,这就不是我们想要的结果了,所以我们需要抑制转义,有两种方法可以做到:

1、在字符串前增加’r‘,即myfile = open(r'C:\new\text.txt','w')。但一个raw字符串不能以单个的反斜杠结尾,因为反斜杠会转义后续引用的字符,仍然必须转义外围引号字符以将其嵌入到该字符串中。也就是说:r'...\'不是一个有效的字符串常量,一个raw字符串不能以奇数个反斜杠结束。

2、多加一个'\',即myfile = open('C:\\new\\text.txt','w')

  实际上,当打印一个嵌入了反斜杠字符串时,python自身也会使用这种写两个反斜杠的方法

扩展分片:第3个限制值

  分片表达式增加了一个可选的第三个索引,用作步进。完整形式的分片现在变成了X[I:J:K]。

  eg:S = "HELLO" 

       S[::-1]可实现字符S的反转

str和repr的区别:简单来说,函数str() 用于将值转化为适于人阅读的形式,而repr() 转化为供解释器读取的形式

    

Python学习五|集合、布尔、字符串的一些特点的更多相关文章

  1. 【python学习笔记】3.字符串使用

    [python学习笔记]3.字符串使用 字符串是一种序列,素有标准的序列操作对字符串用样适用,字符串是不可以改变 格式化操作符,%,左侧是格式化字符串,右侧是被格式的值,可以是一个值.元组.字典 数值 ...

  2. python基础——数字&集合&布尔类型

    Python的核心数据类型 内置对象 对象类型 例子 数字 123,3.1415,3+4j,Decimal(小数),Fraction(分数) 字符串 'dodo',"guido's" ...

  3. python学习笔记(二)、字符串操作

    该一系列python学习笔记都是根据<Python基础教程(第3版)>内容所记录整理的 1.字符串基本操作 所有标准序列操作(索引.切片.乘法.成员资格检查.长度.最小值和最大值)都适用于 ...

  4. Python学习系列提升篇------字符串

    字符串是python学习中重要的内容,在以后的工作中,对字符串的处理也必少不了.下面总结一下关于字符串学习的经验. 1.1 字符串的连接和合并 用‘ + ’连接,将两个字符串相加.       合并, ...

  5. Python学习总结6:字符串格式化操作及方法总结

    1. 格式化操作(%) Python中内置有对字符串进行格式化的操作. 模板 格式化字符串时,Python使用一个字符串作为模板.模板中有格式符,这些格式符为真实值预留位置,并说明真实数值应该呈现的格 ...

  6. Python学习(8)字符串

    目录 Python 字符串 Python 访问字符串中的值 Python 字符串更新 Python 转义字符 Python 字符串运算符 Python 字符串格式化 Python 三引号 Unicod ...

  7. python学习笔记20(字符串格式化)

    Python中内置有对字符串进行格式化的操作% 模板 格式化字符串时,Python使用一个字符串作为模板.模板中有格式符,这些格式符为真实值预留位置,并说明真实数值应该呈现的格式.Python用一个t ...

  8. python学习之路06——字符串

    字符串 1.概念 字符串就是由若干个字符组成的有限序列 字符:字母,数字,特殊符号,中文 表示形式:采用的单引号或者双引号 注意:字符串属于不可变实体 2.创建字符串 str1 = "hel ...

  9. python学习摘要(3)--字符串处理函数

    python没有字符类型, "字符串" '字符串' '''字符串''' """字符串""" 三引号可以支持字符串跨行 字 ...

随机推荐

  1. PAT 甲级 1051 Pop Sequence

    https://pintia.cn/problem-sets/994805342720868352/problems/994805427332562944 Given a stack which ca ...

  2. Docker(七)-Dcoker常用命令

    容器生命周期管理 run start/stop/restart kill rm pause/unpause create exec 容器操作 ps inspect top attach events ...

  3. 6 vue-cli mock数据

    https://www.cnblogs.com/dengxiaolei/p/7338773.html //--------------------------------------const por ...

  4. BOM之navigator对象和用户代理检测

    前面的话 navigator对象现在已经成为识别客户端浏览器的事实标准,navigator对象是所有支持javascript的浏览器所共有的.本文将详细介绍navigator对象和用户代理检测 属性 ...

  5. 【设计模式】—— 迭代模式Iterator

    前言:[模式总览]——————————by xingoo 模式意图 提供一个方法按顺序遍历一个集合内的元素,而又不需要暴露该对象的内部表示. 应用场景 1 访问一个聚合的对象,而不需要暴露对象的内部表 ...

  6. 实现AJAX的基本步骤

    实现AJAX的基本步骤 要完整实现一个AJAX异步调用和局部刷新,通常需要以下几个步骤: (1)创建XMLHttpRequest对象,也就是创建一个异步调用对象. (2)创建一个新的HTTP请求,并指 ...

  7. 【BZOJ1487】[HNOI2009]无归岛(动态规划)

    [BZOJ1487][HNOI2009]无归岛(动态规划) 题面 BZOJ 洛谷 题解 哪来的这么多废话啊,直接说一个仙人掌得了. 然后就是要你求仙人掌最大独立集了.(随便蒯份原来的代码就过了) 不过 ...

  8. 通用权限管理系统底层更换最新Oracle驱动的方法

    通用权限管理系统底层先前访问Oracle数据库时需要客户端安装驱动软件,如下图: 安装完毕还需要一番配置,系统再引用其dll, 现在我们使用了最新的dll 该dll是Oracle出的最新的版本. 通用 ...

  9. maven项目添加mysql的链接驱动

    Maven项目中添加JDBC驱动   在pom.xml配置文件中添加: <dependency> <groupId>mysql</groupId> <arti ...

  10. RBAC: 基于角色的访问控制(Role-Based Access Control)

    本文只讨论两种基于角色的访问控制的不同点,不涉及权限设计的数据库设计. 基于角色的访问控制(Role-Based Access Control)可分为隐式角色访问控制和显式角色访问控制. 隐式角色访问 ...