Python初学者,对不起,如果这是一个愚蠢的问题。
所以我有一个长字符串,我需要在字符串的非常特定的区域添加一个字符。例如,|在字符编号23,912和1200之后。我读了这个Add string in a certain position in Python,但它只适用于添加一个字符。
此外,解决方案需要可扩展,而不仅仅是3次。我正在制作的代码可以包含许多不同的位置,以及我想要角色的位置。
答案 0 :(得分:1)
参考您发布的链接Add string in a certain position in Python;
如果您想为不同的值重复操作,可以创建一个列表,其中包含您希望插入|
字符的所有索引位置。
例如,
>>> l = [1, 3, 4]
>>> s = "abcdef"
>>> for i in l:
>>> s = s[:i] + "|" + s[i:] # as suggested in your link
>>> s
'a|b||cdef'
这将允许您重复列表中提供的值集的过程。您还可以定义一个函数来帮助解决这个问题,如果这个方法不够,我可以解释一下!
但请注意,这将插入相对于当前迭代的字符。也就是说,在该示例中,在位置1处添加|
之后,下一个插入位置3与第一个插入之前的位置不同。您可以通过包含计数器变量来避免这种情况(如果您愿意),以通过已执行的插入数量来抵消所有索引位置(将需要订购初始列表)。
答案 1 :(得分:1)
python不太好,希望我能帮忙 根据你去过的网站,你可以做一个循环来解决问题
代码看起来应该是这样的
def insert_dash(string, index, addin):
return string[:index] + addin + string[index:]
alldone = False
string = input("String: ")
index = " "
while index:
index = input("Index: ")
addin = input("Add into: ")
string = insert_dash(string, index, addin)
希望它有所帮助!
PS:我没有尝试过代码,但我认为它会起作用