본문 바로가기
data science/python

반복되는 특정 단어를 복수 단어로 바꿔치기

by 꼰대코더 2025. 2. 11.

시나리오

DB 에 LLM의 프롬프트 형식을 아래와 같이 저장해서 나중에 꺼내와서 사용자가 입력한 문자열로 바꾸고자 할때.

예) promt = "{input} 은 어느나라의 {input} 입니까?"

 

방법1

prompt = "{input} 은 어느나라의 {input} 입니까?"

repl_str = '{input}'
repl_list = ['서울', '수도']

for ele in repl_list:
    prompt = promt.replace(repl_str, ele, 1)

# 서울은 어느나라의 수도 입니까?

 

방법2

import re

prompt = "{input} 은 어느나라의 {input} 입니까?" 

repl_str = '{input}' 
repl_list = ['서울', '수도']

# re.sub 두번째는 lambda함수는 매치될 때마다 호출되고 x는 매치되는 문자열 정보이고 repl_list.pop(0)로 대체되게 된다.
prompt = re.sub(repl_str, lambda x: repl_list.pop(0), prompt)

# 서울은 어느나라의 수도 입니까?