Python 에서 문자열 의 하위 문자열 을 바 꾸 는 예제
>>> "This is a %(var)s" % {"var":"dog"}
'This is a dog'
>>>
사실 string.Template 클래스 를 사용 하여 위의 교 체 를 실현 할 수 있 습 니 다.
>>> from string import Template
>>> words = Template("This is $var")
>>> print(words.substitute({"var": "dog"})) #
This is dog
>>> print(words.substitute(var="dog")) #
This is dog
>>>
템 플 릿 인 스 턴 스 를 만 들 때 문자열 형식 에 서 는$대신 달러 문자 두 개 를 사용 할 수 있 고${}으로 변 수 를 확대 할 수 있 습 니 다.그러면 변수 뒤에 다른 문자 나 숫자 를 연결 할 수 있 습 니 다.이 사용 방식 은 Shell 이나 Perl 의 언어 와 같 습 니 다.다음은 letter 템 플 릿 으로 예 를 들 어 보 겠 습 니 다.
>>> from string import Template
>>> letter = """Dear $customer,
... I hope you are having a great time!
... If you do not find Room $room to your satisfaction, let us know.
... Please accept this $$5 coupon.
... Sincerely,
... $manager,
... ${name}Inn"""
>>> template = Template(letter)
>>> letter_dict = {"name": "Sleepy", "customer": "Fred Smith", "manager": "Tom Smith", "room": 308}
>>> print(template.substitute(letter_dict))
Dear Fred Smith,
I hope you are having a great time!
If you do not find Room 308 to your satisfaction, let us know.
Please accept this $5 coupon.
Sincerely,
Tom Smith,
SleepyInn
>>>
때때로 substitute 에 사전 을 매개 변수 로 준비 하기 위해 서 가장 간단 한 방법 은 로 컬 변 수 를 설정 한 다음 에 이 변 수 를 local()에 전달 하 는 것 입 니 다.(이 함수 가 사전 을 만 듭 니 다.사전 의 key 는 로 컬 변수 이 고 로 컬 변수의 값 은 key 를 통 해 접근 합 니 다)
>>> locals() # ,
{'__builtins__': <module '__builtin__' (built-in)>, '__name__': '__main__', '__doc__': None, '__package__': None}
>>> name = "Alice" # name
>>> age = 18 # age
>>> locals() # locals() name, age
{'name': 'Alice', '__builtins__': <module '__builtin__' (built-in)>, 'age': 18, '__package__': None, '__name__': '__mai
__', '__doc__': None}
>>> locals()["name"] # name
'Alice'
>>> locals()["age"] # age
18
>>>
위의 예 가 있 으 면 예 를 들 어 보 자.
>>> from string import Template
>>> msg = Template("The square of $number is $square")
>>> for number in range(10):
... square = number * number
... print msg.substitute(locals())
...
The square of 0 is 0
The square of 1 is 1
The square of 2 is 4
The square of 3 is 9
또 다른 방법 은 사전 이 아 닌 키워드 매개 변수 문법 을 사용 하여 substitute 에 값 을 직접 전달 하 는 것 이다.
>>> from string import Template
>>> msg = Template("The square of $number is $square")
>>> for i in range(4):
... print msg.substitute(number=i, square=i*i)
...
The square of 0 is 0
The square of 1 is 1
The square of 2 is 4
The square of 3 is 9
>>>
심지어 사전 과 키 워드 를 동시에 전달 할 수 있다.
>>> from string import Template
>>> msg = Template("The square of $number is $square")
>>> for number in range(4):
... print msg.substitute(locals(), square=number*number)
...
The square of 0 is 0
The square of 1 is 1
The square of 2 is 4
The square of 3 is 9
>>>
사전 의 항목 과 키워드 매개 변수 가 전달 하 는 값 이 충돌 하 는 것 을 방지 하기 위해 키워드 매개 변수 가 우선 합 니 다.예 를 들 어:
>>> from string import Template
>>> msg = Template("It is $adj $msg")
>>> adj = "interesting"
>>> print(msg.substitute(locals(), msg="message"))
It is interesting message
파 이 썬 에서 문자열 을 바 꾸 는 하위 문자열 을 구현 하 는 이 예제 가 바로 작은 편집 이 여러분 에 게 공유 하 는 모든 내용 입 니 다.참고 가 되 고 많은 응원 바 랍 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Python의 None과 NULL의 차이점 상세 정보그래서 대상 = 속성 + 방법 (사실 방법도 하나의 속성, 데이터 속성과 구별되는 호출 가능한 속성 같은 속성과 방법을 가진 대상을 클래스, 즉 Classl로 분류할 수 있다.클래스는 하나의 청사진과 같아서 하나의 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.