我是python的新手,我正在开发一个函数,我希望它传递一个类似abcd
的字符串,它输出类似A-Bb-Ccc-Dddd
的内容。在
我创造了以下。在
`
def mumbler(s):
chars = list(s)
mumbled = []
result = []
for char in chars:
caps = char.upper()
num = chars.index(char)
low = char.lower()
mumbled.append( caps+ low*num)
for i in mumbled:
result.append(i+'-')
result = ''.join(result)
return result[:-1]
`
它在大多数情况下都有效。但是,当我传递一个像Abcda
这样的字符串时。它无法返回预期的输出,在本例中,A-Bb-Ccc-Dddd-Aaaaa
。
我该怎么解决这个问题?
感谢您抽出时间回答这个问题。在
如果您想让自己的代码正常工作,只需将
result
列表转换为第二个for循环之外的字符串:在
count
上使用一个简单的1-liner-next()
来保持重复的时间,title()
用于标题大小写:您可以使用列表理解和^{cd1>}以更简单的方式完成此操作
相关问题 更多 >
编程相关推荐