Python实现字符串中某个字母的替代功能


Posted in Python onOctober 21, 2019

今晚想实现这样一个功能:将输入字符串中的字母 “i” 变成字母 “p”。当时想的很简单,直接用for循环遍历,然后替代,出问题的代码如下:

name = input('随便输入一堆字符吧...')
#name = list(name)
name = "".join(name)
j = 0
for i in range(len(name)):
 if name[i] == 'i':
  name[i] = 'p'
  j = j + 1
 i = i + 1

print("".join(name))
if j == 0:
 print('字符串里没有字母i ......')

当时笔者想的是挺好,for循环遍历,然后替代,顺便再把字符 “i” 出现的次数用变量 j 表示出来,结果呢,一执行就出现了这样一个错误:

Traceback (most recent call last):
 File "<ipython-input-4-0705a4a9133b>", line 6, in <module>
  name[i] = 'p'
TypeError: 'str' object does not support item assignment

为什么呢,我 百度了一下,是因为这个:

输入的name,是字符串,用type函数验证后,显示的确是str类型。笔者也意识到了这个问题,想用 name = “”.join(name) 来改变数据类型,但我没有想到的是,刚才提到的 name = “”.join(name) 这一行,**

是将list转变成字符串str的!!!

**
too young too simple, sometimes too naive。。。。

因此,真正需要解决这个问题,需要把str字符串类型转变成list列表类型,就是需要list函数。 即:

用name = list(name) 代替 name = “”.join(name)

于是乎,问题解决,KO!

学到了,字符串不能用for循环的方式直接遍历替代,如果想进行字符元素的替换,需要用 list() 函数进行转换,变成 list 类型

总结

以上所述是小编给大家介绍的Python实现字符串中某个字母的替代功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
在Python编程过程中用单元测试法调试代码的介绍
Apr 02 Python
python中threading超线程用法实例分析
May 16 Python
Python3使用requests发闪存的方法
May 11 Python
Python处理JSON时的值报错及编码报错的两则解决实录
Jun 26 Python
各种Python库安装包下载地址与安装过程详细介绍(Windows版)
Nov 02 Python
Python程序中设置HTTP代理
Nov 06 Python
django将网络中的图片,保存成model中的ImageField的实例
Aug 07 Python
Pycharm创建项目时如何自动添加头部信息
Nov 14 Python
Python with标签使用方法解析
Jan 17 Python
python 控制台单行刷新,多行刷新实例
Feb 19 Python
Python实现http接口自动化测试的示例代码
Oct 09 Python
Python用requests库爬取返回为空的解决办法
Feb 21 Python
基于Python实现船舶的MMSI的获取(推荐)
Oct 21 #Python
基于Python解密仿射密码
Oct 21 #Python
python多继承(钻石继承)问题和解决方法简单示例
Oct 21 #Python
python超时重新请求解决方案
Oct 21 #Python
详解python中*号的用法
Oct 21 #Python
python中bytes和str类型的区别
Oct 21 #Python
python中@property和property函数常见使用方法示例
Oct 21 #Python
You might like
这东西价格,可以买几台TECSUN S-2000
2021/03/02 无线电
php 移除数组重复元素的一点说明
2008/11/27 PHP
PHP中3种生成XML文件方法的速度效率比较
2012/10/06 PHP
Codeigniter操作数据库表的优化写法总结
2014/06/12 PHP
微信支付开发发货通知实例
2016/07/12 PHP
php基于curl主动推送最新内容给百度收录的方法
2016/10/14 PHP
javascript css float属性的特殊写法
2008/11/13 Javascript
js prototype截取字符串函数
2010/04/01 Javascript
基于jQuery替换table中的内容并显示进度条的代码
2011/08/02 Javascript
Node调试工具JSHint的安装及配置教程
2014/05/27 Javascript
整理Javascript基础语法学习笔记
2015/11/29 Javascript
js实现div模拟模态对话框展现URL内容
2016/05/27 Javascript
js实现功能比较全面的全选和多选
2017/03/02 Javascript
详解如何使用 vue-cli 开发多页应用
2017/12/16 Javascript
vue todo-list组件发布到npm上的方法
2018/04/04 Javascript
使用FormData实现上传多个文件
2018/12/04 Javascript
关于自定义Egg.js的请求级别日志详解
2018/12/12 Javascript
vue如何自动化打包测试环境和正式环境的dist/test文件
2019/06/06 Javascript
js+HTML5 canvas 实现简单的加载条(进度条)功能示例
2019/07/16 Javascript
跟老齐学Python之用while来循环
2014/10/02 Python
跟老齐学Python之重回函数
2014/10/10 Python
Python类的多重继承问题深入分析
2014/11/09 Python
python使用zip将list转为json的方法
2018/12/31 Python
python算法题 链表反转详解
2019/07/02 Python
Python+PyQt5+MySQL实现天气管理系统
2020/06/16 Python
教你使用Sublime text3搭建Python开发环境及常用插件安装另分享Sublime text3最新激活注册码
2020/11/12 Python
可口可乐唇膏:Lip Smackers
2019/08/27 全球购物
Eclipse面试题
2014/03/22 面试题
阿里巴巴的Oracle DBA笔试题答案-SQL tuning类
2016/04/03 面试题
请编程遍历页面上所有 TextBox 控件并给它赋值为 string.Empty
2015/12/03 面试题
安全生产演讲稿
2014/05/09 职场文书
国际残疾人日广播稿范文
2014/10/09 职场文书
2014年商场工作总结
2014/11/22 职场文书
宣传部部长竞选稿
2015/11/21 职场文书
Redis集群的关闭与重启操作
2021/07/07 Redis
原型和原型链 prototype和proto的区别详情
2021/11/02 Javascript