我正在寻找一种方法来复制字符串中的每个字符,保留它们的顺序。这是我需要的那种格式:
>>> dup = "abc"
>>> dup1 = MyFunction(dup) # I don't know what code should go here!
>>> dup1
"aabbcc"
我知道如何对列表中的元素执行此操作,但我无法弄清楚如何使字符串以相同的方式工作。我可以用什么代码来获得这个结果?
答案 0 :(得分:2)
您可以将代码用于包含以下字符串的列表:
dup1=''.join(yourDuplicateFunction(list(dup)))
它将转换列表中的字符串,您将在此列表中应用重复的函数,并将其连接到没有分隔符。
答案 1 :(得分:1)
我可能会这样做:
>>> dup = "abc"
>>> dup1 = str() # a new, empty string.
>>> for char in dup:
... dup1 += char + char # strings concatenate using + and +=
>>> dup1 # the duplicant string
'aabbcc'
>>> dup # the original is preserved
'abc'
如果您愿意,可以在dup1 += char
块中连续两次使用dup1 += char + char
而不是for
,或者如果您想在复制之间修改字符串,则可以。
dup1 = ""
可能是dup1 = str()
的更多Pythonic替代品,但我不确定。可能更多的是风格问题。在任何一种情况下,都会创建一个空字符串。