如果我有两个字符串
s1='abcdefghi'
s2='jklmnopqr'
我将第一个字符串s1
切分为子字符串['abc','def','ghi']
,然后我编码它的函数为每个子序列[10,2,33]
提供数字。
然后我用其他函数解析它解码返回['abc','def','ghi']
。
字符串s2
现在,我想知道解码后如何将子字符串['abc','def','ghi','jkl','mno','pqr']
返回到
原始字符串s1='abcdefghi'
和s2='jklmnopqr'
答案 0 :(得分:3)
修改强>
对于您的更新问题,您可以使用:
>>> lst = ['abc', 'def', 'ghi', 'jkl', 'mno', 'pqr']
>>> s1, s2 = map("".join, zip(lst[::3], lst[1::3], lst[2::3]))
>>> s1
'abcdefghi'
>>> s2
'jklmnopqr'
>>>
在上面的演示中,lst
表示您的函数返回的列表。
答案 1 :(得分:2)
Python中的字符串是不可变的。这意味着您无法更改字符串对象。如果在赋值中重用标识符,则创建新的字符串对象
>>> s = 'a'
>>> id(s)
10767896
>>> s = 'b'
>>> id(s)
10767920
答案 2 :(得分:1)
您可以使用join()
:
data = ['abc', 'def', 'ghi']
s = ''.join(data)
答案 3 :(得分:1)
>>> decodes = ['abc','def','ghi']
>>> ''.join(decodes)
'abcdefghi'
>>> answer = ''.join(decodes)
>>> print(answer)
abcdefghi