Skip to content

Commit 72c72a1

Browse files
authored
use f-strings not .format() (#89)
* use f-strings not .format() * few more formats
1 parent 3abf580 commit 72c72a1

File tree

4 files changed

+28
-33
lines changed

4 files changed

+28
-33
lines changed

devtools/ansi.py

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@
22

33
from .utils import isatty
44

5-
_ansi_template = '\033[{}m'
6-
75
__all__ = 'sformat', 'sprint'
86

97
MYPY = False
@@ -92,16 +90,16 @@ def __call__(self, input: 'Any', *styles: 'Style', reset: bool = True, apply: bo
9290
try:
9391
s = self.styles[s]
9492
except KeyError:
95-
raise ValueError('invalid style "{}"'.format(s))
93+
raise ValueError(f'invalid style "{s}"')
9694
codes.append(_style_as_int(s.value))
9795

9896
if codes:
99-
r = _ansi_template.format(';'.join(codes)) + text
97+
r = _as_ansi(';'.join(codes)) + text
10098
else:
10199
r = text
102100

103101
if reset:
104-
r += _ansi_template.format(_style_as_int(self.reset))
102+
r += _as_ansi(_style_as_int(self.reset))
105103
return r
106104

107105
@property
@@ -128,6 +126,10 @@ def _style_as_int(v: 'Union[Style, int]') -> str:
128126
return str(v)
129127

130128

129+
def _as_ansi(s: str) -> str:
130+
return f'\033[{s}m'
131+
132+
131133
sformat = Style(-1)
132134

133135

devtools/debug.py

Lines changed: 12 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -38,21 +38,18 @@ def __init__(self, value, *, name=None, **extra):
3838
def str(self, highlight=False) -> str:
3939
s = ''
4040
if self.name and not is_literal(self.name):
41-
s = sformat(self.name, sformat.blue, apply=highlight) + ': '
41+
s = f'{sformat(self.name, sformat.blue, apply=highlight)}: '
4242

4343
suffix = sformat(
44-
' ({.value.__class__.__name__}){}'.format(self, ''.join(' {}={}'.format(k, v) for k, v in self.extra)),
44+
f" ({self.value.__class__.__name__}){''.join(f' {k}={v}' for k, v in self.extra)}",
4545
sformat.dim,
4646
apply=highlight,
4747
)
4848
try:
4949
s += pformat(self.value, indent=4, highlight=highlight)
5050
except Exception as exc:
51-
s += '{!r}{}\n {}'.format(
52-
self.value,
53-
suffix,
54-
sformat('!!! error pretty printing value: {!r}'.format(exc), sformat.yellow, apply=highlight),
55-
)
51+
v = sformat(f'!!! error pretty printing value: {exc!r}', sformat.yellow, apply=highlight)
52+
s += f'{self.value!r}{suffix}\n {v}'
5653
else:
5754
s += suffix
5855
return s
@@ -78,25 +75,24 @@ def __init__(self, *, filename: str, lineno: int, frame: str, arguments: 'List[D
7875

7976
def str(self, highlight=False) -> str:
8077
if highlight:
81-
prefix = '{}:{} {}'.format(
82-
sformat(self.filename, sformat.magenta),
83-
sformat(self.lineno, sformat.green),
84-
sformat(self.frame, sformat.green, sformat.italic),
78+
prefix = (
79+
f'{sformat(self.filename, sformat.magenta)}:{sformat(self.lineno, sformat.green)} '
80+
f'{sformat(self.frame, sformat.green, sformat.italic)}'
8581
)
8682
if self.warning:
87-
prefix += sformat(' ({})'.format(self.warning), sformat.dim)
83+
prefix += sformat(f' ({self.warning})', sformat.dim)
8884
else:
89-
prefix = '{0.filename}:{0.lineno} {0.frame}'.format(self)
85+
prefix = f'{self.filename}:{self.lineno} {self.frame}'
9086
if self.warning:
91-
prefix += ' ({})'.format(self.warning)
92-
return prefix + '\n ' + '\n '.join(a.str(highlight) for a in self.arguments)
87+
prefix += f' ({self.warning})'
88+
return f'{prefix}\n ' + '\n '.join(a.str(highlight) for a in self.arguments)
9389

9490
def __str__(self) -> str:
9591
return self.str()
9692

9793
def __repr__(self) -> str:
9894
arguments = ' '.join(str(a) for a in self.arguments)
99-
return '<DebugOutput {s.filename}:{s.lineno} {s.frame} arguments: {a}>'.format(s=self, a=arguments)
95+
return f'<DebugOutput {self.filename}:{self.lineno} {self.frame} arguments: {arguments}>'
10096

10197

10298
class Debug:

devtools/prettier.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ def _format_dict(self, value: 'Any', _: str, indent_current: int, indent_new: in
141141
open_, split_, after_, close_ = 'OrderedDict([\n', ', ', '),\n', '])'
142142
before_ += '('
143143
elif type(value) != dict:
144-
open_, close_ = '<{}({{\n'.format(value.__class__.__name__), '})>'
144+
open_, close_ = f'<{value.__class__.__name__}({{\n', '})>'
145145

146146
self._stream.write(open_)
147147
for k, v in value.items():

devtools/timer.py

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,9 @@ def elapsed(self):
2121

2222
def str(self, dp=3):
2323
if self._name:
24-
return '{}: {:0.{dp}f}s elapsed'.format(self._name, self.elapsed(), dp=dp)
24+
return f'{self._name}: {self.elapsed():0.{dp}f}s elapsed'
2525
else:
26-
return '{:0.{dp}f}s elapsed'.format(self.elapsed(), dp=dp)
26+
return f'{self.elapsed():0.{dp}f}s elapsed'
2727

2828
def __str__(self):
2929
return self.str()
@@ -65,21 +65,18 @@ def summary(self, verbose=False):
6565
if not r.finish:
6666
r.capture()
6767
if verbose:
68-
print(' {}'.format(r.str(self.dp)), file=self.file)
68+
print(f' {r.str(self.dp)}', file=self.file)
6969
times.add(r.elapsed())
7070

7171
if times:
7272
from statistics import mean, stdev
7373

7474
print(
75-
_SUMMARY_TEMPLATE.format(
76-
count=len(times),
77-
mean=mean(times),
78-
stddev=stdev(times) if len(times) > 1 else 0,
79-
min=min(times),
80-
max=max(times),
81-
dp=self.dp,
82-
),
75+
f'{len(times)} times: '
76+
f'mean={mean(times):0.{self.dp}f}s '
77+
f'stdev={stdev(times) if len(times) > 1 else 0:0.{self.dp}f}s '
78+
f'min={min(times):0.{self.dp}f}s '
79+
f'max={max(times):0.{self.dp}f}s',
8380
file=self.file,
8481
flush=True,
8582
)

0 commit comments

Comments
 (0)