문자열상수:
문자열 가져오기인쇄(string.ascii_lowercase)print(string.ascii_uppercase )
print(string.ascii_letters)
print(string.di
gits)print(string.hexdigits)
print(string.octdigits)
print( 문자열.구두점)
인쇄(string.printable)
결과
abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789 0123456789abcdefABCDEF 01234567 !"#$%&'()*+,-./:;96b4fef55684b9312718d5de63fb7121?@[\]^_`{|}~ 0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!"#$%&'()*+,- ./:;96b4fef55684b9312718d5de63fb7121?@[\]^_`{|}~1.템플릿 클래스: 실제로 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 명령줄에
$ python string_template.py
를 입력합니다. 결과
TEMPLATE: Variable : foo Escape : $ Variable in text: fooiable INTERPOLATION: Variable : foo Escape : % Variable in text: fooiable FORMAT: Variable : foo Escape : {}세 가지 모두 문자열 서식 지정 효과가 있는 것을 확인할 수 있습니다. 단지 세 가지의 수식어가 다를 뿐입니다. Template 클래스의 좋은 점은
을 통해 클래스를 상속할 수 있고 인스턴스화 후 수정자와 변수 의 이름 형식을 자체 정의할 수 있다는 것입니다. 정규 표현식 정의 일 수도 있습니다. 예를 들어 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!