我有两个列表,它们是在Python中自动生成的(使用String和Random(。假设我运行了代码,目前有这样的代码:
random_word = ['Sirius','July','Seven']
random_char = ['#','$','%']
想要的输出是这样的:
random_list = ['Siriu$s', 'J%uly', 'S#even']
注意1:特殊字符可以全部定位在同一位置或任意随机位置
现在,这是我停止的部分,因为我还没有找到一种方法-至少-将特殊字符放在列表random_word
:的每个字符串中的任何特定位置
for k in random_words:
for i,j in list(enumerate(random_char)):
random_list = k.insert(i*2, j)
print(random_list)
注意2:我知道我上面的错误,k是str,不能使用insert()
(这是我目前知道的主要错误:p(。然而,我想展示我对我最初试图做的事情的过程的想法;将来自random_char
的随机字符j
放在随机字的第二个位置i*2
,而不替换它,使用两个for循环
一如既往,我们非常感谢任何关于如何纠正这一错误的指导!:(
IIUC,使用random.randrange
和random.shuffle
的一种方法:
random_word = ['Sirius','July','Seven']
random_char = ['#','$','%']
random.shuffle(random_char)
for w, c in zip(random_word, random_char):
i = random.randrange(0, len(w)+1)
print(w[:i] + c + w[i:])
可能的输出(因为它是随机的(:
S#irius
%July
S$even