什么是字符串?
‘’、"" 、 “”“字符串”""、 ‘’‘字符串 ‘’’(用符号括起来的)
eg:
>>> s = ' '
>>> type(s)
<class 'str'>
>>>
>>>
>>> s= " "
>>> type(s)
<class 'str'>
>>>
>>> s = """ """
>>> type(s)
<class 'str'>
>>>
>>> s = ''' '''
>>> type(s)
<class 'str'>
>>>
字符串常见的方法
字符串可以被迭代,也可以通过下标访问
注意:字符串是不可变类型
《python中字符串的所有方法,并不会改动字符串本身的值!!!
而是返回值发生了变化》
1.|-- capitalize() # 首字母大写
>>> ss = "hahahah"
>>> ss.capitalize()
'Hahahah'
2.|-- center(width[,fillchar]) # 居中对象
>>> ss.center(25,"-")
'---------hahahah---------'
>>>
3.|-- count(char) # 统计字符数量
>>> ss = "ehwfiowoihsh"
>>> ss.count("w")
2
4.|-- endswith(char) # 以xxx结束
>>> ss.endswith("h")
True
5.|-- startswith(char) # 以x开始
>>> ss.startswith("h")
False
>>> ss.startswith("e")
True
6.|-- find(char) # 用来检索某个字符或者字符串在该字符串中的第一次出现索引位置,如果找不到呢?则返回-1
>>> ss = "nihai345"
>>> ss.find("i")
1
>>> ss.find("8")
-1
7.|-- rfind(char) # 查找最后一个
8.|-- index(char) # 用来检索某个字符或者字符串在该字符串中的第一次出现索引位置,如果找不到呢?则抛出异常
>>> ss = "jasadshj44"
>>> ss.index("a")
1
>>> ss.index("7")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: substring not found
9.|-- rindex(char) # 查找最后一个
10.|-- format() # 格式化字符串,python提出了,建议大家使用
11.|-- join(list) # 按照特定的规则拼接字符串
>>> ss = ["ni" "hao" "ya"]
>>> " ".join(ss)
'nihaoya'
12.|-- split(char) # 按照特定的字符串分割字符串,结果是列表
>>> ss = "http://www.baidu.com"
>>> ss.split(".")
['http://www', 'baidu', 'com']
13.|-- rsplit() # 从右
14.|-- upper() # 转大写
>>> ss.upper()
'HGJHHJJIIUI'
15.|-- lower() # 转小写
>>> ss = "HgJHhjjiIUI"
>>> ss.lower()
'hgjhhjjiiui
16.|-- strip() # 清除两侧的空格
>>> " sakjhfashl isfoisao oisfuapisouapsuf0 sfosai ".strip()
'sakjhfashl isfoisao oisfuapisouapsuf0 sfosai'
17.|-- lstrip() # 清除左侧空格
>>> " sakjhfashl isfoisao oisfuapisouapsuf0 sfosai ".lstrip()
'sakjhfashl isfoisao oisfuapisouapsuf0 sfosai '
18.|-- rstrip() # 清除右侧空格
>>> " sakjhfashl isfoisao oisfuapisouapsuf0 sfosai ".rstrip()
' sakjhfashl isfoisao oisfuapisouapsuf0 sfosai'
19.|-- title() # 将字符串格式化为符合标题的格式
>>> ss = "jin tian shi he shui jiao"
>>> ss.title()
'Jin Tian Shi He Shui Jiao'
20.|-- replace(old_str, new_str) # 替换字符串
>>> ss.replace("jiao","ya")
'jin tian shi he shui ya'
21.|-- encode() # 将字符串转换为字节
>>> ss.encode("utf-8")
b'jin tian shi he shui jiao'
注意:字节对象中有一个decode方法,可以将字节转换为对应编码的字符串
>>> ss.encode("utf-8")
b'jin tian shi he shui jiao'
>>>
>>>
>>>
>>> sss = ss.encode("utf-8")
>>> sss
b'jin tian shi he shui jiao'
>>> sss.decode("utf-8")
'jin tian shi he shui jiao'
《以上就是列举几种常用的字符串》
注:
切片是python提供给开发者用来分割、切割字符串或者其他有序可迭代对象的一种手段
字符串[index] # 访问字符串的某个字符
字符串[start:] # 从start小标位置开始切割字符串,到末尾
字符串[start:end] # 从start小标位置开始切割字符串,切去end位置,不包含end 前闭后开区间[)
字符串[start:end:step] # step表示步长,默认是1,注意:如果step为负数,表示从右向左切取
python是从在负索引的。最后一个位是-1,倒数第二个是-2,以此类推
注意:切片操作,如果下标不存在,并不会报错
>>> sss
b'jin tian shi he shui jiao'
>>> sss[4:7]
b'tia'
>>> sss[4:]
b'tian shi he shui jiao'
>>> sss[:6]
b'jin ti'
>>>
>>> sss
b'jin tian shi he shui jiao'
>>> sss[13:2:-2]
b'hisni