Python's simplicity philosophy
Ben Finney
bignose-hates-spam at and-benfinney-does-too.id.au
Thu Nov 20 19:43:03 EST 2003
On 21 Nov 2003 00:29:09 +0100, Curt wrote:
> Erik Max Francis <max at alcyone.com> writes:
>> In your sample, there were no consecutive lines that were identical,
>> so uniq did nothing. Change the order of them, and despite still
>> being non-sorted, you'll see that uniq is working:
>
> Well, changing the order of the lines in my sample to ensure the
> contiguity of identical entries _is_ sorting.
Erik wasn't talking about the *process* of rearranging lines; he was
talking about the *state* of the input list.
This list is sorted (in ascending alphanumeric order):
curty
curty
flirty
flirty
This list is not sorted:
flirty
curty
curty
flirty
Both contain contiguous identical lines. The 'uniq' filter will have an
effect on oth these lists.
This list is sorted:
cooty
curty
flippy
flirty
This list is not sorted:
flippy
curty
cooty
flirty
Neither contain contiguous identical lines. The 'uniq' filter will not
have an effect on either of these lists.
> "non-sorted" appears to me to be a rather provocative description of
> the modified sample which you were constrained to alter in order that
> it meet a criterion whose existence you deny.
The criterion has been stated several times already: uniq will act on
consecutive identical lines. As shown above, this property is
orthogonal to "sorted".
It's unfortunate (and probably worthy of a bug report) that man pages
refer to "sorted" in the 'NAME' section for 'uniq', because the sorted
or non-sorted state is unrelated to the behaviour of 'uniq'.
--
\ "Anything that is too stupid to be spoken is sung." -- Voltaire |
`\ |
_o__) |
Ben Finney <http://bignose.squidly.org/>
More information about the Python-list
mailing list