gpt4 book ai didi

python - 我在 python 中遇到字符串和 for 循环问题

转载 作者:太空宇宙 更新时间:2023-11-03 20:23:16 25 4
gpt4 key购买 nike

我有一个字符串,并将其保存在变量中。我想用 for 循环更改偶数字符以大写。所以我给出了偶数字符并将其大写。但我不能给他们带来奇怪的字符。有人可以帮助我吗?

这是我的代码:

name = "mohammadhosein"
>>> for even in range(0, len(name), 2):
... if(even % 2 == 0):
... print(name[even].title(), end=' ')
...
M H M A H S I >>>
>>> ###### I want print it like this:MoHaMmAdHoSeIn```

最佳答案

我假设您对编程相当陌生,因此请使用以下 for 循环:

name = "mohammadhosein"
output = ''
for i, c in enumerate(name):
if i % 2 == 0:
output += c.upper()
else:
output += c

# output will be 'MoHaMmAdHoSeIn'

enumerate 将为您提供一对 (i, c),其中 i 是从 0 开始的索引, cname的一个字符。

如果您对代码感觉更舒服,您可以使用列表理解并按如下方式连接结果:

>>> ''.join([c.upper() if i % 2 == 0 else c for i, c in enumerate(name)])
'MoHaMmAdHoSeIn'

正如 @SimonN 所建议的,您只需要对代码进行一些小的更改:

for index in range(0, len(name)):
if(index % 2 == 0):
print(name[index].upper(), end='') # use upper instead of title it is more readable
else:
print(name[index], end='')
print()

关于python - 我在 python 中遇到字符串和 for 循环问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58019080/

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