>>> import string
>>> string.ascii_letters
'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
>>> string.ascii_lowercase
'abcdefghijklmnopqrstuvwxyz'
>>> string.ascii_uppercase
'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
>>> string.digits
'0123456789'
>>> string.hexdigits
'0123456789abcdefABCDEF'
>>> string.letters
'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
>>> string.lowercase
'abcdefghijklmnopqrstuvwxyz'
>>> string.uppercase
'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
>>> string.octdigits
'01234567'
>>> string.punctuation
'!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~'
>>> string.printable
'0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~ \t\n\r\x0b\x0c'
>>> string.whitespace
'\t\n\x0b\x0c\r
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
|
>>> '{0}, {1}, {2}' . format ( 'a' , 'b' , 'c' )
'a, b, c'
>>> '{}, {}, {}' . format ( 'a' , 'b' , 'c' ) # 2.7+ only
'a, b, c'
>>> '{2}, {1}, {0}' . format ( 'a' , 'b' , 'c' )
'c, b, a'
>>> '{2}, {1}, {0}' . format ( * 'abc' ) # unpacking argument sequence
'c, b, a'
>>> '{0}{1}{0}' . format ( 'abra' , 'cad' ) # arguments' indices can be repeated
'abracadabra'
>>> 'Coordinates: {latitude}, {longitude}' . format (latitude = '37.24N' , longitude = '-115.81W' )
'Coordinates: 37.24N, -115.81W'
>>> coord = { 'latitude' : '37.24N' , 'longitude' : '-115.81W' }
>>> 'Coordinates: {latitude}, {longitude}' . format ( * * coord)
'Coordinates: 37.24N, -115.81W'
>>> c = 3 - 5j
>>> ( 'The complex number {0} is formed from the real part {0.real} '
... 'and the imaginary part {0.imag}.' ). format (c)
'The complex number (3-5j) is formed from the real part 3.0 and the imaginary part -5.0.'
>>> class Point( object ):
... def __init__( self , x, y):
... self .x, self .y = x, y
... def __str__( self ):
... return 'Point({self.x}, {self.y})' . format ( self = self )
...
>>> str (Point( 4 , 2 ))
'Point( 4 , 2 )
>>> coord = ( 3 , 5 )
>>> 'X: {0[0]}; Y: {0[1]}' . format (coord)
'X: 3; Y: 5'
>>> "repr() shows quotes: {!r}; str() doesn't: {!s}" . format ('test1 ', ' test2')
"repr() shows quotes: 'test1'; str() doesn't: test2"
>>> '{:<30}' . format ( 'left aligned' )
'left aligned '
>>> '{:>30}' . format ( 'right aligned' )
' right aligned'
>>> '{:^30}' . format ( 'centered' )
' centered '
>>> '{:*^30}' . format ( 'centered' ) # use '*' as a fill char
'***********centered***********'
>>> '{:+f}; {:+f}' . format ( 3.14 , - 3.14 ) # show it always
'+3.140000; -3.140000'
>>> '{: f}; {: f}' . format ( 3.14 , - 3.14 ) # show a space for positive numbers
' 3.140000; -3.140000'
>>> '{:-f}; {:-f}' . format ( 3.14 , - 3.14 ) # show only the minus -- same as '{:f}; {:f}'
'3.140000; -3.140000'
>>> # format also supports binary numbers
>>> "int: {0:d}; hex: {0:x}; oct: {0:o}; bin: {0:b}" . format ( 42 )
'int: 42; hex: 2a; oct: 52; bin: 101010'
>>> # with 0x, 0o, or 0b as prefix:
>>> "int: {0:d}; hex: {0:#x}; oct: {0:#o}; bin: {0:#b}" . format ( 42 )
'int: 42; hex: 0x2a; oct: 0o52; bin: 0b101010'
>>> '{:,}' . format ( 1234567890 )
'1,234,567,890'
>>> points = 19.5
>>> total = 22
>>> 'Correct answers: {:.2%}.' . format (points / total)
'Correct answers: 88.64%'
>>> import datetime
>>> d = datetime.datetime( 2010 , 7 , 4 , 12 , 15 , 58 )
>>> '{:%Y-%m-%d %H:%M:%S}' . format (d)
'2010-07-04 12:15:58'
>>> for align, text in zip ( '<^>' , [ 'left' , 'center' , 'right' ]):
... '{0:{fill}{align}16}' . format (text, fill = align, align = align)
...
'left<<<<<<<<<<<<'
'^^^^^center^^^^^'
'>>>>>>>>>>>right'
>>>
>>> octets = [ 192 , 168 , 0 , 1 ]
>>> '{:02X}{:02X}{:02X}{:02X}' . format ( * octets)
'C0A80001'
>>> int (_, 16 )
3232235521
>>>
>>> width = 5
>>> for num in range ( 5 , 12 ):
... for base in 'dXob' :
... print '{0:{width}{base}}' . format (num, base = base, width = width),
... print
...
5 5 5 101
6 6 6 110
7 7 7 111
8 8 10 1000
9 9 11 1001
10 A 12 1010
11 B 13 1011
>>> from string import Template
>>> s = Template( '$who likes $what' )
>>> s.substitute(who = 'tim' , what = 'kung pao' )
'tim likes kung pao'
>>> d = dict (who = 'tim' )
>>> Template( 'Give $who $100' ).substitute(d)
Traceback (most recent call last):
[...]
ValueError: Invalid placeholder in string: line 1 , col 10
>>> Template( '$who likes $what' ).substitute(d)
Traceback (most recent call last):
[...]
KeyError: 'what'
>>> Template( '$who likes $what' ).safe_substitute(d)
'tim likes $what'
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
string.capitalize(word) 返回一个副本,首字母大写
>>> string.capitalize( "hello" )
'Hello'
>>> string.capitalize( "hello world" )
'Hello world'
>>> string.split( "asdadada asdada" )
[ 'asdadada' , 'asdada' ]
>>> string.strip( " adsd " )
'adsd'
>>> string.rstrip( " adsd " )
' adsd'
>>> string.lstrip( " adsd " )
'adsd '
string.swapcase(s) 小写变大写,大写变小写
>>> string.swapcase( "Helloo" )
'hELLOO'
>>> string.ljust( "ww" , 20 )
'ww '
>>> string.rjust( 'ww' , 20 )
' ww'
>>> string.center( 'ww' , 20 )
' ww '
string.zfill(s, width)
Pad a numeric string on the left with zero digits until the given width is reached. Strings starting with a sign are handled correctly.
>>> string.zfill( 'ww' , 20 )
'000000000000000000ww'
|