今天写replace方法的时候的代码如下:

 message = "I really like dogs"
message.replace('dog','cat')
print(message)

本以为运行结果会是:I really like cats

出乎意料结果却是原字符串

查了一下才得知python中string是不可变的

>>> help(str.replace)
Help on method_descriptor:
replace(...)
    S.replace(old, new[, count]) -> string
    
    Return a copy of string S with all occurrences of substring
    old replaced by new.  If the optional argument count is
    given, only the first count occurrences are replaced.
>>> s='hello python,hello world,hello c++,hello java!'
>>> s.replace('hello','Hello')#将字符串s中的所有'hello'子串,替换成'Hello',返回替换后的字符串,原字符串s不变
'Hello python,Hello world,Hello c++,Hello java!'
>>> s
'hello python,hello world,hello c++,hello java!'
>>> s.replace('hello','Hello',2)#将字符串s中的前2个'hello'子串,替换成'Hello'
'Hello python,Hello world,hello c++,hello java!'
>>> s
'hello python,hello world,hello c++,hello java!'
>>> s.replace('wahaha','haha')#要替换的'wahaha'子串不存在,直接返回原字符串
'hello python,hello world,hello c++,hello java!'

最新文章

  1. Cygwin/babun install telnet
  2. php.ini 安全配置
  3. Sliverlight 样式
  4. Android数据库安全解决方案,使用SQLCipher进行加解密
  5. mysql事务处理用法与实例详解
  6. javascript继承(六)—实现多继承
  7. Javascript里,想把一个整数转换成字符串,字符串长度为2
  8. struts2中修改Action后刷新浏览器后不能及时更新
  9. 树莓派玩耍笔记4 -- 树莓派ssh党必备的配置
  10. Windows下MongoDB安装及创建用户名和密码
  11. Android搜索框以及内容提供器
  12. Django 多数据库支持
  13. Netty学习问题总结
  14. CRM原型
  15. python遇到的文件错误
  16. 日记整理---->2016-11-26
  17. java面试①整体流程
  18. 啰里吧嗦redis
  19. Linux tree命令详解
  20. 如何用纯 CSS 创作一个单元素抛盒子的 loader

热门文章

  1. 【PA 2014】Kuglarz
  2. 洛谷P3690 LCT模板
  3. Same Tree 序列化二叉树
  4. MQTT + apache-apollo服务器初学使用
  5. [C陷阱和缺陷] 第2章 语法“陷阱”
  6. [BZOJ:3162]:独钓寒江雪
  7. Proteus中的 PIC10/12/16 MCUs编译器无法下载的问题
  8. GIT学习之路第五天 分支管理
  9. mysql 5.7 显示中文
  10. ActiveMQ应用