Home >Backend Development >Python Tutorial >Detailed description of the module string.py in Python
This article mainly introduces the relevant information about the detailed description of the module string.py in Python. The introduction in the article is very detailed and has certain reference value for everyone. Friends who need it can take a look below. Bar.
1. Usage
String constant:
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)
Result
##
abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789 0123456789abcdefABCDEF 01234567 !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~ 0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!"#$%&'()*+,- ./:;<=>?@[\]^_`{|}~
2. Template class:
formatted string and the format() method of string object, you can Helps to understand better. First, create a new python file:
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))Then, enter in the python command line:
$ python string_template.py
The result
TEMPLATE: Variable : foo Escape : $ Variable in text: fooiable INTERPOLATION: Variable : foo Escape : % Variable in text: fooiable FORMAT: Variable : foo Escape : {}can be seen All three can have the effect of formatting strings. It's just that the modifiers of the three are different. The good thing about the Template class is that it can inherit the
class through , customize its modifiers after instantiation, and can also regular expression## the name format of the variable #Definition.
Such as string_template_advanced.py example: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))
First, explain the above python file. A class MyTemplate is defined inside, which inherits the Template class of string, and then
overloads
$ python string_template_advanced.py Modified ID pattern: Delimiter : % Replaced : replaced Igonred : %notunderscored
Why is notunderscored not replaced? The reason is that when we define the class, we specify that the underscore '_' should appear in the idpattern, but the
variable name
The above is the detailed content of Detailed description of the module string.py in Python. For more information, please follow other related articles on the PHP Chinese website!