Newcomer to Python tutorial question
Alan Cameron
alan.cameron at iname.com
Fri May 8 05:16:55 EDT 2009
"Terry Reedy" <tjreedy at udel.edu> wrote in message
news:mailman.5248.1241732704.11746.python-list at python.org...
> Alan Cameron wrote:
>>
>>>>> why is the printed result of
>>>>>
>>>>>>>> basket = {'apple', 'orange', 'apple', 'pear', 'orange', 'banana'}
>>>>>>>> print(basket)
>>>>> {'orange', 'banana', 'pear', 'apple'}
>>>>>
>>>>> in the sequence given?
>
>> It appears that I used a reserved term when I used 'sequence'.
>
> No and Sort-of.
>
> No: We often use it in the normal English sense of ordered items, as I and
> I think others assume you did. Your question is quite legitimate, and the
> answer, as indicated, is how an implementation interacts with the sequence
> of additions.
>
> Sort-of: The library manual section of Sequence Types lists the sequence
> operations common to all or most built-in Python sequence classes. But it
> does not explicitly define sequence. Ranges, which are iterables that
> directly support only indexing and len(), are called sequences. Dicts,
> which are iterables that support len() but are usually not indexed by
> integers, are not. So that suggests a minimal definition of sequence, but
> all the other sequence classes support much more that is typically
> assumed.
>
> Keywords are reserved terms in the language such as 'if' and 'None' that
> are specially recognized by the parser and which affect compilation.
> Identifiers of the form '__x...y__' are reserved names. Non-terminal
> terms in the grammar are reserved terms, in a sense, within the reference
> manual, but 'expression_list', not 'sequence', is used for comma-separated
> sequences of expressions in code. The comma-separated sequence of items
> in a function call is separately defined as an 'argument_list' because
> 'keyword_item's like 'a=b' and '*' and '**' are not expressions and
> because there are some order restrictions on argument items.
>
> Terry Jan Reedy
>
Thanks for the explanation.
In particular reference to the tutorial section
http://docs.python.org/3.0/tutorial/datastructures.html#nested-list-comprehensions
There is a word which is ambiguous, at least to me.
Perhaps you can explain the use of the word 'comprehensions'.
Comprehension I understand
Comprehensions I don't.
Is there a glossary of terms somewhere?
--
Alan Cameron
More information about the Python-list
mailing list