Python实现字符串中某个字母的替代功能
2019-10-21 18:05
2979 查看
今晚想实现这样一个功能:将输入字符串中的字母 “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实现将字符串的首字母变为大写,其余都变为小写的方法
- 通过程序统计字符串的大写字母个数、小写字母个数、数字个数和其它字符个数。用函数func实现功能
- 【LeetCode】Python实现-345. 反转字符串中的元音字母
- 正则匹配密码只能是数字和字母组合字符串功能【php与js实现】
- 【Python】实现字符串分割功能 类似于str.split()
- JS/CSS实现字符串单词首字母大写功能
- MS SQL 实现验证字符串是否包含有大小写字母的功能
- MS SQL 实现验证字符串是否包含有大小写字母的功能
- Python实现字符串逆序输出功能示例
- Python实现字符串与数组相互转换功能示例
- JS实现生成由字母与数字组合的随机字符串功能详解
- python实现生成字符串大小写字母和数字的各种组合
- Python实现统计给定字符串中重复模式最高子串功能示例
- python-实现xml字符串替换功能
- Python实现针对含中文字符串的截取功能示例
- 打印给定一字符串的所有字母组合——递归实现
- python 中文字符串的处理实现代码
- 使用python代码实现三叉搜索树高效率”自动输入提示”功能
- Python:程序最小化到托盘功能实现
- 使用拼音首字母序列实现检索功能