[issue40394] difflib.SequenceMatcher.find_longest_match default arguments

2020-05-01 Thread Lewis Ball


Lewis Ball  added the comment:

Thanks Tim. Cheers for your support with this :)

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue40394] difflib.SequenceMatcher.find_longest_match default arguments

2020-04-29 Thread Tim Peters


Tim Peters  added the comment:

All done.  Thank you, Lewis!  You're now an official Python contributor, and 
are entitled to all the fame, fortune, and power that follows.  Use your new 
powers only for good :-)

--
resolution:  -> fixed
stage: patch review -> resolved
status: open -> closed

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue40394] difflib.SequenceMatcher.find_longest_match default arguments

2020-04-29 Thread Tim Peters


Tim Peters  added the comment:


New changeset 3209cbd99b6d65aa18b3beb124fac9c792b8993d by lrjball in branch 
'master':
bpo-40394 - difflib.SequenceMatched.find_longest_match default args (GH-19742)
https://github.com/python/cpython/commit/3209cbd99b6d65aa18b3beb124fac9c792b8993d


--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue40394] difflib.SequenceMatcher.find_longest_match default arguments

2020-04-27 Thread Lewis Ball


Lewis Ball  added the comment:

Oh okay, well I was just saying I have added a test which is unrelated to the 
feature I have added, but it does test a different part of the same function. 
Anyway, I have raised a PR for this now (19742) and can separate it out if 
needed.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue40394] difflib.SequenceMatcher.find_longest_match default arguments

2020-04-27 Thread Lewis Ball


Change by Lewis Ball :


--
keywords: +patch
pull_requests: +19064
stage: needs patch -> patch review
pull_request: https://github.com/python/cpython/pull/19742

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue40394] difflib.SequenceMatcher.find_longest_match default arguments

2020-04-27 Thread Tim Peters


Tim Peters  added the comment:

I'm not clear on exactly what it is you're asking, but it's better to ask for 
forgiveness than permission ;-)  That is, it's unlikely anyone will object to 
adding a test in a feature PR.

--
stage:  -> needs patch
versions: +Python 3.9

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue40394] difflib.SequenceMatcher.find_longest_match default arguments

2020-04-27 Thread Lewis Ball


Lewis Ball  added the comment:

Adding a test for this and noticed I can add one more test case to get the 
method to full coverage. Can I add that to this PR or should I raise a separate 
one?

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue40394] difflib.SequenceMatcher.find_longest_match default arguments

2020-04-27 Thread Lewis Ball


Lewis Ball  added the comment:

Okay, that makes sense. I will raise a PR

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue40394] difflib.SequenceMatcher.find_longest_match default arguments

2020-04-26 Thread Tim Peters


Tim Peters  added the comment:

Sounds good to me, Lewis - thanks!  Note, though, that alo and blo should 
default to 0.  `None` is best reserved for cases where the default value needs 
to be computed at runtime.  But alo == blo == 0 apply to all possible instances.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue40394] difflib.SequenceMatcher.find_longest_match default arguments

2020-04-26 Thread Raymond Hettinger


Change by Raymond Hettinger :


--
assignee:  -> tim.peters

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue40394] difflib.SequenceMatcher.find_longest_match default arguments

2020-04-26 Thread Karthikeyan Singaravelan


Change by Karthikeyan Singaravelan :


--
nosy: +tim.peters

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue40394] difflib.SequenceMatcher.find_longest_match default arguments

2020-04-26 Thread Lewis Ball


New submission from Lewis Ball :

The usage of difflib.SequenceMatcher.find_longest_match could be simplified for 
the most common use case (finding the longest match between the entirety of the 
two strings) by taking default args.

At the moment you have to do:

>>> from difflib import SequenceMatcher
>>> a, b = 'foo bar', 'foo baz'
>>> s = SequenceMatcher(a=a, b=b)
>>> s.find_longest_match(0, len(a), 0, len(b))
Match(a=0, b=0, size=6)

but with default args the final line could be simplified to just:

>>> s.find_longest_match()
Match(a=0, b=0, size=6)

which seems to be much cleaned and more readable.


I'd suggest updating the code so that the function signature becomes:

find_longest_match(alo=None, ahi=None, blo=None, bhi=None)

which is consistent with the current docstring of "Find longest matching block 
in a[alo:ahi] and b[blo:bhi]." as `a[None:None]` is the whole of `a`.

I think this would only be a minor code change, and if it is something that 
would be useful I'd be happy to have a go at a PR.

--
components: Library (Lib)
messages: 367306
nosy: Lewis Ball
priority: normal
severity: normal
status: open
title: difflib.SequenceMatcher.find_longest_match default arguments
type: enhancement

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com