이 글은 Python의 string.py 모듈에 대한 자세한 설명에 대한 관련 정보를 주로 소개하고 있으며, 이 글의 소개는 매우 자세하며 필요한 모든 사람이 참조할 수 있습니다. 아래를 살펴보세요.
1. 사용법
문자열 상수:
import string print(string.ascii_lowercase) print(string.ascii_uppercase) print(string.ascii_letters) print(string.digits) print(string.hexdigits) print(string.octdigits) print(string.punctuation) print(string.printable)
결과
abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789 0123456789abcdefABCDEF 01234567 !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~ 0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!"#$%&'()*+,- ./:;<=>?@[\]^_`{|}~
2. 템플릿 클래스:
실제로 Template 클래스는 형식화된 문자열 의 사용법과 문자열 객체 의 format()
메소드를 비교해 보면 더 잘 이해할 수 있습니다. 먼저 새 Python 파일 string_template.py
,
을 만들고 그 안에 다음 콘텐츠를 작성합니다.
import string values = {'var': 'foo'} t = string.Template(""" Variable : $var Escape : $$ Variable in text: ${var}iable """) print('TEMPLATE:', t.substitute(values)) s = """ Variable : %(var)s Escape : %% Variable in text: %(var)siable """ print('INTERPOLATION:', s % values) s = """ Variable : {var} Escape : {{}} Variable in text: {var}iable """ print('FORMAT:', s.format(**values))
그런 다음 python 명령줄 Enter:
$ python string_template.py
Result
TEMPLATE: Variable : foo Escape : $ Variable in text: fooiable INTERPOLATION: Variable : foo Escape : % Variable in text: fooiable FORMAT: Variable : foo Escape : {}
세 가지의 차이점은 문자열 형식 지정 효과를 가질 수 있습니다. 단지 세 가지의 수식어가 다를 뿐입니다. 템플릿 클래스의 좋은 점은 을 통해 클래스를 상속할 수 있고, 인스턴스화 후 수정자를 사용자 정의할 수 있으며, 변수의 이름 형식에 정규 표현식 >정의.
string_template_advanced.py 예:
import string class MyTemplate(string.Template): delimiter = '%' idpattern = '[a-z]+_[a-z]+' template_text = ''' Delimiter : %% Replaced : %with_underscore Igonred : %notunderscored ''' d = { 'with_underscore': 'replaced', 'notunderscored': 'not replaced', } t = MyTemplate(template_text) print('Modified ID pattern:') print(t.safe_substitute(d))먼저 위 Python 파일에 대해 설명합니다. MyTemplate 클래스는 문자열의 템플릿 클래스를 상속받은 다음 해당 두 필드를
오버로드하여 내부에 정의됩니다. Delimiter는 수정자이며 이제 이전 '$' 대신 '%'로 지정됩니다. 다음으로 idpattern은 변수의 형식 사양입니다.
결과
$ python string_template_advanced.py Modified ID pattern: Delimiter : % Replaced : replaced Igonred : %notunderscored밑줄이 표시되지 않은 이유는 무엇입니까? 그 이유는 클래스를 정의할 때 idpattern에 밑줄 '_'이 나타나도록 지정했는데,
위 내용은 Python의 string.py 모듈에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!