04 字符串
目录链接:https://www.jianshu.com/p/e1e201bea601
字符串基础
什么是字符串呢?字符串是由独立字符组成的一个序列。通常包含在单引号('') 双引号("" ) 或者三引号之中(''' ''' 或 """ """ , 两者一样)
string1 = 'teststring1'
string2 = "teststring2"
string3 = """teststring3"""
string4 = '''teststring4'''
string.png
支持转义字符
常见的的转义字符
转义字符 | 说明 |
---|---|
(在行尾时) 续行符 | |
\ | 反斜杠符号 |
' | 单引号 |
" | 双引号 |
\a | 响铃 |
\b | 退格(Backspace) |
\000 | 空 |
\n | 换行 |
\v | 纵向制表符 |
\t | 横向制表符 |
\r | 回车 |
\f | 换页 |
\oyy | 八进制数,yy代表的字符,例如:\o12代表换行 |
\xyy | 十六进制数,yy代表的字符,例如:\x0a代表换行 |
\other | 其它的字符以普通格式输出 |
参见 http://www.runoob.com/python3/python3-string.html
字符串的常见操作
可以把字符串想象成一个由单个字符组成的数组, Python 的字符串同样支持索引, 切片和遍历等等操作。
string.png
Python 的字符串是不可变的(immutable)
符串的改变
Python 中字符串的改变, 通常只能通过创建新的字符串来完成。
方法一:s = 'H' + s[1:]
方法二:s = s.replace('h', 'H')
老版本的 Python , 每次想要改变字符串, 往往需要 O(n) 的时间复杂度, 其中, n 为新字符串的长度。
Python2.5 开始, 每次处理字符串的拼接操作时(str1 += str2) , Python 先会检测 str1 还有没有其他的引用。 如果没有的话, 就会尝试原地扩充字符串 buffer 的大笑,而不是重新分配一块内存来创建新的字符串并拷贝。
字符串拼接
1、加法操作符 str1 += str2
2、内置的 join 函数 string.join(iterable), 表⽰把每个元素都按照指定的格式连接起来
字符串的分割
分割函数 split(separator)、strip(str)\lstrip(str)\rstrip(str)
string.split(separator), 表示把字符串按照separator 分割成子字符串, 并返回一个分割后子字符串组合的列表。
string.strip(str), 表示去掉首尾的 str 字符串;
string.lstrip(str), 表示只去掉开头的 str 字符串;
string.rstrip(str), 表示只去掉尾部的 str 字符串。
字符串的格式化
参见
Python标准库之string 库:中的 格式字符串语法示例 Format String Syntax examples
https://www.jianshu.com/p/faaa48f4c511
参考资料:
极客时间 Python核心技术与实战学习
Python核心技术与实战(极客时间)链接:
http://gk.link/a/103Sv
Python3 字符串:
http://www.runoob.com/python3/python3-string.html
Python标准库之string 库:
https://www.jianshu.com/p/faaa48f4c511
GitHub链接:
https://github.com/lichangke/LeetCode
个人Blog:
https://lichangke.github.io/
欢迎大家来一起交流学习