mirror of
https://github.com/romanz/amodem.git
synced 2026-04-03 11:06:24 +08:00
Use f-string interpolation
This commit is contained in:
@@ -26,7 +26,7 @@ class Interface:
|
||||
|
||||
def call(self, name, *args, **kwargs):
|
||||
assert self.lib is not None
|
||||
func_name = 'Pa_{0}'.format(name)
|
||||
func_name = f'Pa_{name}'
|
||||
if self.debug:
|
||||
log.debug('API: %s%s', name, args)
|
||||
func = getattr(self.lib, func_name)
|
||||
@@ -81,7 +81,7 @@ class Stream:
|
||||
assert read != write # don't support full duplex
|
||||
|
||||
direction = 'Input' if read else 'Output'
|
||||
api_name = 'GetDefault{0}Device'.format(direction)
|
||||
api_name = f'GetDefault{direction}Device'
|
||||
index = interface.call(api_name, restype=ctypes.c_int)
|
||||
self.params = Stream.Parameters(
|
||||
device=index, # choose default device
|
||||
|
||||
@@ -18,7 +18,7 @@ def volume_controller(cmd):
|
||||
def controller(level):
|
||||
assert 0 < level <= 1
|
||||
percent = 100 * level
|
||||
args = '{0} {1:.0f}%'.format(cmd, percent)
|
||||
args = f'{cmd} {percent:.0f}%'
|
||||
log.debug('Setting volume to %7.3f%% -> "%s"', percent, args)
|
||||
subprocess.check_call(args=args, shell=True)
|
||||
return controller if cmd else (lambda level: None)
|
||||
@@ -73,7 +73,7 @@ def detector(config, src, frame_length=200):
|
||||
if success:
|
||||
msg = 'good signal'
|
||||
else:
|
||||
msg = 'too {0} signal'.format(errors[flags.index(False)])
|
||||
msg = f'too {errors[flags.index(False)]} signal'
|
||||
|
||||
yield dict(
|
||||
freq=freq, rms=rms, peak=peak, coherency=coherency,
|
||||
@@ -135,7 +135,7 @@ def recv(config, src, verbose=False, volume_cmd=None, dump_audio=None):
|
||||
log.info('verbose: %s', verbose)
|
||||
if verbose:
|
||||
fields = ['total', 'rms', 'coherency', 'peak']
|
||||
fmt += ', '.join('{0}={{{0}:.4f}}'.format(f) for f in fields)
|
||||
fmt += ', '.join(f'{f}={{{f}:.4f}}' for f in fields)
|
||||
|
||||
for state in recv_iter(config, src, volume_cmd, dump_audio):
|
||||
log.info(fmt.format(**state))
|
||||
|
||||
@@ -113,5 +113,5 @@ class Detector:
|
||||
|
||||
freq_err = a / (self.Tsym * self.freq)
|
||||
log.info('Frequency error: %.3f ppm', freq_err * 1e6)
|
||||
self.plt.title('Frequency drift: {0:.3f} ppm'.format(freq_err * 1e6))
|
||||
self.plt.title(f'Frequency drift: {freq_err * 1e6:.3f} ppm')
|
||||
return amplitude, freq_err
|
||||
|
||||
@@ -45,7 +45,7 @@ class Receiver:
|
||||
self.plt.plot(equalizer.prefix)
|
||||
errors = (bits != equalizer.prefix)
|
||||
if any(errors):
|
||||
msg = 'Incorrect prefix: {0} errors'.format(sum(errors))
|
||||
msg = f'Incorrect prefix: {sum(errors)} errors'
|
||||
raise ValueError(msg)
|
||||
log.debug('Prefix OK')
|
||||
|
||||
@@ -94,7 +94,7 @@ class Receiver:
|
||||
for (i, freq), snr in zip(enumerate(self.frequencies), SNRs):
|
||||
log.debug('%5.1f kHz: SNR = %5.2f dB', freq / 1e3, snr)
|
||||
self._constellation(symbols[:, i], train_symbols[:, i],
|
||||
'$F_c = {0} Hz$'.format(freq), index=i)
|
||||
f'$F_c = {freq} Hz$', index=i)
|
||||
assert error_rate == 0, error_rate
|
||||
log.debug('Training verified')
|
||||
|
||||
@@ -188,7 +188,7 @@ class Receiver:
|
||||
symbol_list = np.array(self.stats['symbol_list'])
|
||||
for i, freq in enumerate(self.frequencies):
|
||||
self._constellation(symbol_list[i], self.modem.symbols,
|
||||
'$F_c = {0} Hz$'.format(freq), index=i)
|
||||
f'$F_c = {freq} Hz$', index=i)
|
||||
self.plt.show()
|
||||
|
||||
def _constellation(self, y, symbols, title, index=None):
|
||||
|
||||
Reference in New Issue
Block a user