首页 > 解决方案 > 比较两个字符(在字符串内)如何在 Python 中工作

问题描述

我开始学习 Python 并查看了以下网站:https ://www.w3resource.com/python-exercises/string/ 我在 #4 上工作,即“编写 Python 程序以从给定字符串中获取字符串,其中所有它的第一个字符的出现次数已更改为'$',但第一个字符本身除外。”

str="restart"
char=str[0]
print(char)

strcpy=str
i=1
for i in range(len(strcpy)):
  print(strcpy[i], "\n")
  if strcpy[i] is char:
    strcpy=strcpy.replace(strcpy[i], '$')
print(strcpy)

我希望“resta$t”,但实际结果是:$esta$t

谢谢您的帮助!

标签: pythonstring-comparison

解决方案


您的代码需要进行一些修改。

如下所示修改您的代码。

strcpy="restart"

i=1
for i in range(len(strcpy)):
   strcpy=strcpy.replace(strcpy[0], '$')[:]
print(strcpy)
# $esta$t

此外,用 Python 编写代码的最佳实践是使用 Function。您可以如下修改您的代码,或者您可以使用此功能。

def charreplace(s):
   return s.replace(s[0],'$')[:]

charreplace("restart")
#'$esta$t'

希望这有帮助。


推荐阅读