字符串的比较运算
>
>=
<
<=
==
!=
- 格式:
x > y - 比较规则:
- 字符串x的第一个字母与字符串y的第一个字母比较,如果不相同,则直接的出比较结果,如果相同,则再取第二个字母进行比较,以此类推。
- 比较的依据是字符的unicode编码值
in / not in 运算符
- 作用:用于序列,字典,集合等容器中,用于判断某个值是否存在于容器中,如果存在返回true,否则返回false
- not in 与 in 运算符的返回结果相反
- 格式:对象 in 序列
>>> 'a' in 'abcd'
true
>>> x='welcome to china'
>>> 'to' in x
True
>>> 'hello' not in x
True
字符串的索引 index
Python的字符串是不可以改变的字符序列
- 语法:字符串[整数表达式]
- 说明: Python序列都可以用索引index来访问序列中的对象,Python序列的正向索引是从0开始的,第二个索引为1,以此类推,最后一个索引是len(s)-1
python序列的反向索引是从-1开始的,-1代表最后一个,-2 代表倒数第二个,以此列推,第一个是-len(s)
>>> a='hello'
>>> a[0]
'h'
>>> a[1]
'e'
>>> a[9]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: string index out of range
>>> a[4]
'o'
>>>
>>> a[-1]
'o'
>>> a[-2]
'l'
切片 slice
从字符窜序列中取出相应的元素,重新组成一个字符串序列
- 语法: 字符串[(开始索引)]:(结束索引e)(:(步长s))]
注:小括号()内的部分可省略
- 语法说明:
- 开始索引是切片切下的位置,0代表第一个元素,1代表第二个元素,-1代表最后一个元素
- 结束索引是切片的终止索引(但不包含终止点)
- 步长是切片每次获取完当前元素后移动的方向和偏移量
- 没有步长,相当于取值完毕后向右移动一个索引的位置(默认为1)
- 当步长为正整数时,取正向切片
- 当步长的负整数时,取反向切片
- 反向切片时,默认的起始位置为最后一个元素,终止位置是第一个元素的前一个位置
>>> s='abcde'
>>> s[1:4]
'bcd'
>>> s[:4]
'abcd'
>>> s[1:]
'bcde'
>>>
>>> s[-3:100]
'cde'
>>>
>>> s[1:4:2] //步长为2
'bd'
>>>
>>> s[::2]
'ace'
>>> s[::3]
'ad'
>>> s[::4]
'ae'
>>>
>>> s[::-1]
'edcba'
>>> s[::-2]
'eca'
>>> s[::-3]
'eb'
>>>
python3 中常用的序列函数:
- len(seq):返回序列的长度
- max(x):返回序列的最大值的元素
- min(x):返回序列的最小值的元素
>>> s
'wangafiei'
>>> min(s)
'a'
>>> max(s)
'w'
字符串编码转换函数
- ord©:返回一个字符的Unicode值
- chr(i):返回i这个值所对应的字符
>>> ord('王')
29579
>>> chr(321)
'Ł'
>>> chr(29579)
'王'
整数转字符串函数:
- hex(i):将整数转换为十六进制字符串
>>> hex(1000)
'0x3e8'
>>> hex(10000)
'0x2710'
>>>
- oct(i) 八进制
- bin(i) 二进制
>>> oct(1000)
'0o1750'
>>> bin(100)
'0b1100100'
字符串构造函数
- str(obj=’’) 将对象转换为字符串
>>> str(True)
'True'
>>> str(False)
'False'