Message171405
| Author |
chris.jerdonek |
| Recipients |
chris.jerdonek, docs@python |
| Date |
2012年09月28日.03:50:23 |
| SpamBayes Score |
-1.0 |
| Marked as misclassified |
Yes |
| Message-id |
<1348804224.11.0.798375217467.issue16073@psf.upfronthosting.co.za> |
| In-reply-to |
| Content |
> Date: 2012年9月20日 15:14:36 -0400
> To: docs@python.org
> Subject: [docs] map objects are not lists
>
> 5.1.3. List Comprehensions<http://docs.python.org/dev/tutorial/datastructures.html#list-comprehensions>
>
> List comprehensions provide a concise way to create lists. Common
> applications are to make new lists where each element is the result of some
> operations applied to each member of another sequence or iterable, or to
> create a subsequence of those elements that satisfy a certain condition.
>
> For example, assume we want to create a list of squares, like:
>>>>
>
>>>> squares = []>>> for x in range(10):... squares.append(x**2)...>>> squares[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
>
> We can obtain the same result with:
>
> squares = [x**2 for x in range(10)]
>
> This is also equivalent to squares = map(lambda x: x**2, range(10)), but
> it?s more concise and readable.
>
>
> I think that the last sentence above should read:
>
> squares = list(map(lambda x: x**2, range(10)))
>
> In other words, the map function returns a map object, not a list object,
> so the list() function needs to be used to convert it to something that is
> truly equivalent to the previous definitions of "squares". (In case it
> matters, I am using Python-3.3.0rc2 on RHEL 6.3.)
(from http://mail.python.org/pipermail/docs/2012-September/010525.html ) |
|
History
|
|---|
| Date |
User |
Action |
Args |
| 2012年09月28日 03:50:24 | chris.jerdonek | set | recipients:
+ chris.jerdonek, docs@python |
| 2012年09月28日 03:50:24 | chris.jerdonek | set | messageid: <1348804224.11.0.798375217467.issue16073@psf.upfronthosting.co.za> |
| 2012年09月28日 03:50:23 | chris.jerdonek | link | issue16073 messages |
| 2012年09月28日 03:50:23 | chris.jerdonek | create |
|