在任意位置分割字符串并将结果部分添加到列表中

问题描述 投票:0回答:2

[我刚开始使用Python编码,然后遇到了我认为很容易解决的问题(至少在Google的帮助下:):

我有一个要在随机位置分割的字符串。字符串的结果部分应添加到列表中,例如

str = "abcdefg"应该变成-> list = ["abc","defg"]

在此示例中,建议我在字符串中确定一个随机定界符(带有randrange),在该定界符处拆分并将各个部分放在一起。效果很好,我了解了代码并能够对其进行了一些修改。但是,当字符串包含一个以上的字符时,由于固定的定界符,此方法在每次出现时都会剪切。

如何实现以下目标:

str = "abcdabcd" --> list = ["abc","dabcd"]?

我正在考虑遍历字符串的字符,但是如何实现“在随机位置分割”的要求?

非常感谢您

python string list random split
2个回答
0
投票

您可以通过切片和使用random.randint进行分割:

import random
my_str = 'somestring'
random_index = random.randint(0, len(my_str))
my_list = [my_str[:random_index], my_str[random_index:]]

0
投票

您可以在随机选择的索引处对字符串进行切片:

import random
s = "abcdabcd"
i = random.randrange(len(s))
print([s[:i], s[i:]])
© www.soinside.com 2019 - 2024. All rights reserved.