thmyleaf判断字符串包含_序列(字符串、列表、字典、集
合、元组)
序列:序列是⼀处存放多个值的连续内存空间
有序序列:有序,意味着有索引,可以进⾏索引操作、切⽚操作
有序序列
列表、元组、字符串、range、zip、map、enumerate等
⽆序序列:字典、集合
⽆序序列:
元素可以进⾏增删改,更改之后id地址
id地址不会变
可变序列:元素
可变序列
不可变序列:
不可变序列
字符串、元组、range、zip、map、enumerate等
⼀、字符串
1、相加
两种相同类型的序列可以相加,前提是类型相同
两个序列相加,不会去除重复元素
字典和集合不⽀持加号操作
2、相乘
序列乘以⼀个数字会形成新的序列,新序列的内容为原来序列被重复n次的结果
字典和集合不⽀持乘号操作
3、判断元素是否存在
inthymeleaf用法
4、序列相关BIF
len()返回序列包含的元素的个数
max()返回序列中最⼤元素
min()返回序列中最⼩元素
5、序列相关的其他内置函数
list()
str()
dict()
tuple()
set()
sum():字典使⽤时,是对key求和
sorted():字典使⽤时,是对key排序
reversed():字典不能reversed
type()
isinstance() 判断元素类型
#查看数据类型:
type('a')
isinstance("a",int)
isinstance("a",str)
⼀、字符串
字母⼤⼩写转换
str.lower():全部字符⼩写
str.upper():全部字符⼤写
str.capitalize():⾸字母⼤写
str.title():每个单词的⾸字母⼤写
str.swapcase():⼤⼩写互换
去除空字符以及特殊字符
删除str字符串两端的空⽩字符以及特殊字符
这⾥的特殊字符包括制表符t、回车符r、换⾏符n
字符串.rstrip()——只去除右边的空格和特殊字符
字符串.lstrip()——只去除左边的空格和特殊字符
字符串分割:
str.split("分隔符",分隔次数)
str.rsplit() 从右边识别字符串
str.lsplit() 从左边识别字符串
In:
str_02 = "123哈254哈354534哈4646"
str_03.split("哈",2) #可以传⼊参数去限制分割⼏次
Out:
['123', '254', '354534哈4646']
str.splitlines() 按照⾏('r', 'rn', n')分隔,返回⼀个包含各⾏作为元素的列表。如果参数 keepends 为 False,不包含换⾏符,如果为
True,则保留换⾏符。
In:
a="关于你r我有太多东西关于你rn清醒的时候放不下矜持n不敢说我喜欢你n只有在某个夜晚多愁善感⼜萦绕在⼼头n或是朋友聚会上的⼤醉n才敢借着情绪说n我喜欢你b=a.splitlines(True) #括号⾥⾯填False,效果⼀样,不显⽰换⾏符
b
Out:
['关于你r',
'我有太多东西关于你rn',
'清醒的时候放不下矜持n',
'不敢说我喜欢你n',
'只有在某个夜晚多愁善感⼜萦绕在⼼头n',
'或是朋友聚会上的⼤醉n',
'才敢借着情绪说n',
'我喜欢你n',
'喜欢了好久好久']
str.partition() 把str以分隔符为标准,分割成三部分,str前,str和str后
str.rpartition() 从左边识别
In:
a = 'abcd哈fgabcd哈123'
a.split('哈')
a.partition('哈')
Out:
['abcd', 'fgabcd', '123']
('abcd', '哈', 'fgabcd哈123')
字符串合并
"-->".join("中⼭⼤学不在中⼭")
返回:'中-->⼭-->⼤-->学-->不-->在-->中-->⼭'
字符串索引
str.find('查的字符',start,end)) 查字符在字符串中初次出现的索引(不存在:返回-1)
str.rfind('查的字符',start,end)) 查字符在字符串中最后⼀次出现的索引
str.index('查的字符',start,end)) 与str.find()差不多,但是不到的时候会报错,程序会停下来
字母⼤⼩写转换
str.lower()
str.upper()
str.capitalize() ⾸字母⼤写
str.title() 每个单词的⾸字母⼤写
str.swapcase() ⼤⼩写互换
去除特殊字符
str.strip() 删除str字符串两端的空⽩字符以及特殊字符,这⾥的特殊字符包括制表符t、回车符r、换⾏符n("可以指定要去掉的字符") str.rstrip() 去除右边的特殊字符
str.lstrip() 去除左边的特殊字符
判断元素类型
str.isdigit():判断字符串是否只由数字组成
str.isalpha:判断字符串是否只由字母组成
str.isalnum():判断字符串是否只由字母或者数字组成
str.isupper():判断所有字母是否为⼤写
str.islower():全部字符串为⼩写
str.isspace():字符串只由空⽩字符组成
str.istitle():字符串中都是⼤写字母开头,后⾯都是⼩写字母的单词
字符串常⽤转义字符
"" :续⾏符
"n":换⾏符
"t":⽔平制表符
其他转义字符
0 :表⽰空
" :表⽰双引号
' :表⽰单引号
:⼀个反斜杠
f :表⽰换页(20世纪80年代风格的打印机编程,它会弹出纸张并开始新的页⾯。你⼏乎肯定永远不需要它。)⼆、列表
列表和字符串⼀样,都属于序列。
序列的索引、切⽚、相加、乘法、判断元素存在否、计算长度、最⼤⼩值,这些操作列表都⽀持。
1、查元素⾸次出现的索引
列表.index(寻的对象,开始索引,结束索引),只能查⼀级元素
列表是没有.find() 操作的
2、元素出现次数
列表.count(寻的对象)
3、元素添加
c.append(要添加的元素)
c.insert(插⼊的索引,要插⼊的对象)
4、元素删除
del 列表名[索引值]
列表名.pop(索引值) #返回的是弹出的那个索引值的元素,列表名.pop()默认弹出最后⼀个值,只能删除⼀级元素列表名.remove(要删除的元素) # ⼀次只能移除⼀个元素,只能删除⼀级元素
列表名.clear() #清空列表的元素
5、列表元素排序
列表.sort(reverse=True) #参数不写,默认升序
列表.reverse() #逆置
6、列表的复制
列表.copy() 浅复制?拷贝的是id地址,没有拷贝对象(现在是不是变了?)
b = a.copy()
深复制:
copy.deepcopy(a)
In:
import copy
a=[1,"a",[2,3]]
id(a)
a
b = copy.deepcopy(a) #深复制
id(b)
a[2][0]=22
a
b
id(a)
id(b) #由于是深复制,所以c没有跟随a变化
Out:
1844829154312
[1, 'a', [2, 3]]
1844829804808
[1, 'a', [22, 3]]
[1, 'a', [2, 3]]
1844829154312
1844829804808
7、列表常⽤操作符
⽐较操作符
列表间做⽐较 默认是从第⼀个元素开始⽐较, ⼀旦有⼀个元素⼤了, 则这个列表⽐另⼀个列表⼤如果⽐较到两个数据类型不⼀致时, 程序会报错
“+”连接操作符
列表的 ‘+’ 操作符也是连接操作符, 它允许把多个列表对象合并起来,
其实相当于extend⽅法, 但是extend是在原来的列表基础上扩展, ‘+’操作符是⽣成⼀个新的列表“*”重复操作符
8、列表其他统计BIF
len()、max()、min()
str() 将序列转化为字符串
In:
a=[1,2,3,4,7]
str(a)
Out:
'[1, 2, 3, 4, 7]'
In:sum(a)
Out:17
sum() : 计算元素和
zip() : 将多个列表对应位置的元素组合为元组,函数返回可迭代的zip对象
zip()
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论