[libcamera-devel] [PATCH 13/24] utils: raspberrypi: ctt: Fix pycodestyle W605
Laurent Pinchart
laurent.pinchart at ideasonboard.com
Sun May 17 16:41:43 CEST 2020
Hi Kieran,
On Thu, May 14, 2020 at 10:08:43AM +0100, Kieran Bingham wrote:
> On 12/05/2020 17:38, Laurent Pinchart wrote:
> > On Tue, May 12, 2020 at 09:25:59AM +0100, Kieran Bingham wrote:
> >> On 12/05/2020 01:03, Laurent Pinchart wrote:
> >>> W605 invalid escape sequence '\.'
> >>>
> >>
> >> Would these be better interpreted as a 'raw' string?:
> >>
> >>> - col = re.search('([0-9]+)[kK](\.(jpg|jpeg|brcm|dng)|_.*\.(jpg|jpeg|brcm|dng))$', string)
> >>> + col = re.search(r'([0-9]+)[kK](\.(jpg|jpeg|brcm|dng)|_.*\.(jpg|jpeg|brcm|dng))$', string)
> >>
> >> That is how I have been handling regexes in python:
> >>
> >> https://docs.python.org/3/howto/regex.html#the-backslash-plague
> >
> > It's a good point. I'll submit a new version.
> >
> > Would you do the same for the strings in ctt_awb.py, or just for the
> > regexp ?
>
> the 'r' prefix is 'raw' not 'regexp', so I believe it applies to the
> ct_awb.py edits too.
Yes, I know it could. It's mostly useful for regexp as you know only
literal \ are needed. For other strings that need both literal \ and
escaped characters, r can't be used. I'm thus wondering if a best
practice would be to avoid it for non-regexp strings that don't make
large usage of literal \.
> Might be worth testing the change somehow though to make sure it still
> works with the matplot component.
>
> I don't see a reason for it not to work ... but still.
>
> >>> Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
> >>> ---
> >>> utils/raspberrypi/ctt/ctt.py | 4 ++--
> >>> utils/raspberrypi/ctt/ctt_awb.py | 4 ++--
> >>> 2 files changed, 4 insertions(+), 4 deletions(-)
> >>>
> >>> diff --git a/utils/raspberrypi/ctt/ctt.py b/utils/raspberrypi/ctt/ctt.py
> >>> index ff264176f040..4d8d6addf415 100755
> >>> --- a/utils/raspberrypi/ctt/ctt.py
> >>> +++ b/utils/raspberrypi/ctt/ctt.py
> >>> @@ -41,8 +41,8 @@ def get_col_lux(string):
> >>> """
> >>> Extract colour and lux values from filename
> >>> """
> >>> - col = re.search('([0-9]+)[kK](\.(jpg|jpeg|brcm|dng)|_.*\.(jpg|jpeg|brcm|dng))$', string)
> >>> - lux = re.search('([0-9]+)[lL](\.(jpg|jpeg|brcm|dng)|_.*\.(jpg|jpeg|brcm|dng))$', string)
> >>> + col = re.search('([0-9]+)[kK](\\.(jpg|jpeg|brcm|dng)|_.*\\.(jpg|jpeg|brcm|dng))$', string)
> >>> + lux = re.search('([0-9]+)[lL](\\.(jpg|jpeg|brcm|dng)|_.*\\.(jpg|jpeg|brcm|dng))$', string)
> >>> try:
> >>> col = col.group(1)
> >>> except AttributeError:
> >>> diff --git a/utils/raspberrypi/ctt/ctt_awb.py b/utils/raspberrypi/ctt/ctt_awb.py
> >>> index 58ef8432fb86..e97d833d0e49 100644
> >>> --- a/utils/raspberrypi/ctt/ctt_awb.py
> >>> +++ b/utils/raspberrypi/ctt/ctt_awb.py
> >>> @@ -256,8 +256,8 @@ def awb(Cam, cal_cr_list, cal_cb_list, plot):
> >>> plt.scatter(rbs_hat[0], rbs_hat[1], color='red')
> >>> for i, ct in enumerate(rbs_hat[2]):
> >>> plt.annotate(str(ct), (rbs_hat[0][i], rbs_hat[1][i]))
> >>> - plt.xlabel('$\hat{r}$')
> >>> - plt.ylabel('$\hat{b}$')
> >>> + plt.xlabel('$\\hat{r}$')
> >>> + plt.ylabel('$\\hat{b}$')
> >>> """
> >>> optional set axes equal to shortest distance so line really does
> >>> looks perpendicular and everybody is happy
--
Regards,
Laurent Pinchart
More information about the libcamera-devel
mailing list