base_string = 'test'
INSERT_POINT = 2 #分かりやすくするために大文字
insert_string = '--hoge--'
# 2文字目から挿入したい場合
print '{0}{1}{2}'.format(base_string[:INSERT_POINT], insert_string, base_string[INSERT_POINT:])
これの結果は
te--hoge--st
となります。
応用
def insert_string_to_base(target_string, insert_point, insert_string):
return target_string[:insert_point] + insert_string + target_string[insert_point:]
とすると関数で使えるし、
insert_string_to_base = lambda base_string, insert_point, insert_string : base_string[:insert_point] + insert_string + base_string[insert_point:]
とするとラムダ式になります。
どちらも、
base_string = 'test'
INSERT_POINT = 2 #分かりやすくするために大文字
insert_string = '--hoge--'
# lambdaで見たい場合は予め上記コードをここに書いておく
# 出力
print insert_string_to_base(base_string, INSERT_POINT, insert_string)
で結果を参照できます。