美文网首页
进阶学习2-字符串

进阶学习2-字符串

作者: 龙猫六六 | 来源:发表于2020-01-29 11:08 被阅读0次
函数 描述
字符串 不可变
s1 += s2 s1不在有引用,会扩大buffer,不新建字符串对象
切片 支持
去除空格 strip , lstrip, rstrip
拼接 '.'.join(str)
格式化 '{}'.format(a)
  • Python 中字符串使用单引号、双引号或三引号表示,三者意义相同,并没有什么区别。其中,三引号的字符串通常用在多行字符串的场景。
  • Python 中字符串是不可变的(前面所讲的新版本 Python 中拼接操作’+='是个例外)。因此,随意改变字符串中字符的值,是不被允许的。
  • Python 新版本(2.5+)中,字符串的拼接变得比以前高效了许多,你可以放心使用。Python 中字符串的格式化(string.format)常常用在输出、日志的记录等场景。

字符串

  • 字符串为常量对象
  • 字符串赋值给变量,实则是变量指向字符串的内存地址,字符串对应的引用计数+1
s1 = '123'
s2 = '123'
print('s1 id is {}'.format(id(s1)))
print('s2 id is {}'.format(id(s2)))
#新建字符串
s2 = s2 + '4'
print('s1 id is {}'.format(id(s1)))
print('s2 id is {}'.format(id(s2)))

字符串常用操作

切片

s3 = 'abcdefg'
print(s3[:3])
print(s3[3:-1])

拼接

s1 += s2
Python 首先会检测 s1 还有没有其他的引用。如果没有的话,就会尝试原地扩充字符串 buffer 的大小,而不是重新分配一块内存来创建新的字符串并拷贝。这样的话,上述例子中的时间复杂度就仅为 O(n) 了。

string.join(iterable)

s5 = '123'
l = '.'.join(s5)
print(l)

strip去空格

s4 = ' 123 456 '
print(str.lstrip(s4))
print(str.rstrip(s4))
print(str.strip(s4))

相关文章

  • 进阶学习2-字符串

    函数描述字符串不可变s1 += s2s1不在有引用,会扩大buffer,不新建字符串对象切片支持去除空格strip...

  • 2017.4.30工作总结

    2017.4.30工作总结 本周完成情况## ** 学习php进阶** 字符串学习 正则学习 未完成的 本周总结 ...

  • 2018-10-15-justify

    ​Justify 1- 释义:证明什么是正当的 2- 进阶 a-The end justify the means...

  • JavaScript学习笔记(三)

    慕课网JavaScript进阶篇第7章学习笔记,JavaScript内置对象:Date对象,String字符串对象...

  • 每日一词 36 l backbone

    每日一词 36l backbone 1-基础意 Courage and determination 2-进阶篇 名...

  • 进阶篇:字符串 (8-1)

    饥人谷学习进阶第 8 天 字符串 字符串就是零个或多个排在一起的字符,放在单引号或双引号之中 单引号字符串内部可以...

  • 三、Python函数基础

    字符串进阶 格式化输出 列表进阶 函数 变量的作用域和global变量 lambda匿名函数 python 使用 ...

  • Swift4.0——字符串

    1-判断字符串中的前部分和后部分,结果是 Bool值 2- 字符串的大小写转换 3-字符串的插入和删除 ...

  • 进阶篇:jQuery DOM操作(20-1)

    饥人谷学习进阶第 20 天 创建元素 只需要把DOM对象或者html字符串传入 $ 方法即可返回一个jQuery对...

  • 6 | 字符串操作

    创建 简单操作 \ 转义符 +拼接 不可以用 字符串和 一个非字符串类型的对象相加 * 复制 进阶操作 字符串 是...

网友评论

      本文标题:进阶学习2-字符串

      本文链接:https://www.haomeiwen.com/subject/weqmthtx.html