gpt4 book ai didi

python - 我在 Po!nts 上的 CodeHS 8.3.7 : Exlamat! 代码有什么问题?

转载 作者:太空宇宙 更新时间:2023-11-04 07:27:36 25 4
gpt4 key购买 nike

这是我应该做的:当您用感叹号代替字母“i”时,单词会更有趣!

编写一个程序,要求用户输入一个字符串,然后打印相同的字符串,并将每个小写字母替换为感叹号。你的程序应该:

将初始字符串转换为列表使用 for 循环逐个元素遍历列表每当您看到小写字母 i 时,请将其替换为列表中的感叹号当您的 for 循环结束时,打印列表的字符串化版本以下是您的程序运行示例:

Enter text: 我喜欢音乐。
我喜欢音乐!c.

这是我现在的代码:

my_string = input("Enter text: ")
my_list = list(my_string)
for item in my_list:
if item == "i":
print "!"
my_list.remove("i")
print item
(" ").join(my_list)

我的代码的问题是,它没有用 ! 替换 i,而是添加了 !,保留了 i 并删除 i 之后的字母。如何修复我的代码?

最佳答案

您可能希望利用 enumerate() 来更改列表项:

my_string = list(input('Enter string: '))
for i, char in enumerate(my_string):
if char == 'i':
my_string[i] == '!'
print(''.join(my_string))

在迭代期间删除列表项通常不是最好的方法,但这种方法会跟踪我们所处的项目,我们可以使用列表索引 i 对其进行编辑。

更好的是,使用列表理解和三元 if 语句:

my_string = list(input('Enter text: '))
my_string = ['!' if char == 'i' else char
for char in my_string]
print(''.join(my_string))

关于python - 我在 Po!nts 上的 CodeHS 8.3.7 : Exlamat! 代码有什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55853649/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com