Mandalika's scratchpad | [ Work blog @Oracle | My Music Compositions ] |
Old Posts: 09.04 10.04 11.04 12.04 01.05 02.05 03.05 04.05 05.05 06.05 07.05 08.05 09.05 10.05 11.05 12.05 01.06 02.06 03.06 04.06 05.06 06.06 07.06 08.06 09.06 10.06 11.06 12.06 01.07 02.07 03.07 04.07 05.07 06.07 08.07 09.07 10.07 11.07 12.07 01.08 02.08 03.08 04.08 05.08 06.08 07.08 08.08 09.08 10.08 11.08 12.08 01.09 02.09 03.09 04.09 05.09 06.09 07.09 08.09 09.09 10.09 11.09 12.09 01.10 02.10 03.10 04.10 05.10 06.10 07.10 08.10 09.10 10.10 11.10 12.10 01.11 02.11 03.11 04.11 05.11 07.11 08.11 09.11 10.11 11.11 12.11 01.12 02.12 03.12 04.12 05.12 06.12 07.12 08.12 09.12 10.12 11.12 12.12 01.13 02.13 03.13 04.13 05.13 06.13 07.13 08.13 09.13 10.13 11.13 12.13 01.14 02.14 03.14 04.14 05.14 06.14 07.14 09.14 10.14 11.14 12.14 01.15 02.15 03.15 04.15 06.15 09.15 12.15 01.16 03.16 04.16 05.16 06.16 07.16 08.16 09.16 12.16 01.17 02.17 03.17 04.17 06.17 07.17 08.17 09.17 10.17 12.17 01.18 02.18 03.18 04.18 05.18 06.18 07.18 08.18 09.18 11.18 12.18 01.19 02.19 05.19 06.19 08.19 10.19 11.19 05.20 10.20 11.20 12.20 09.21 11.21 12.22
SEE ALSO: Python Lists in 5 Minutes or Less .. Part 1
Extracting Part of a List (sublist)
Lists can be sliced using [:]
construction. list[start:end]
(slicing) returns a new list containing elements in the original list from index position "start" to "(end-1)". Index starts at 0. "start" and "end" positions are optional. When "start" position was omitted, start of the list is assumed. When "end" position was omitted, end of the list is assumed. If both are omitted, entire list is returned as is.
>>> record ['Gary', 'Doe', 25, 'Network Ct, Twin Peaks, WA 90201', 140.32, '925-93-2176', 'John', 'Keats', 'Sears Tower, Chicago, IL 46371'] >>> record[4:7] [140.32, '925-93-2176', 'John'] >>> record[:4] ['Gary', 'Doe', 25, 'Network Ct, Twin Peaks, WA 90201'] >>> record[4:] [140.32, '925-93-2176', 'John', 'Keats', 'Sears Tower, Chicago, IL 46371'] >>> record[:] ['Gary', 'Doe', 25, 'Network Ct, Twin Peaks, WA 90201', 140.32, '925-93-2176', 'John', 'Keats', 'Sears Tower, Chicago, IL 46371']
Negative index counts back from the end of the list (right-to-left). -1 refers to the right most (last) element in the list.
eg.,Extract last 3 elements in the list using negative index. >>> record[-3:] ['John', 'Keats', 'Sears Tower, Chicago, IL 46371'] Extract all elements except the last 3. >>> record[:-3] ['Gary', 'Doe', 25, 'Network Ct, Twin Peaks, WA 90201', 140.32, '925-93-2176']
An optional "step" parameter can be specified to skip few elements from the list, or put another way to get every nth element from the list. Syntax: list[start:end:step]
Fetch every alternate element from the beginning of the list. >>> record[::2] ['Gary', 25, 140.32, 'John', 'Sears Tower, Chicago, IL 46371'] Reverse the list. >>> record[::-1] ['Sears Tower, Chicago, IL 46371', 'Keats', 'John', '925-93-2176', 140.32, 'Network Ct, Twin Peaks, WA 90201', 25, 'Doe', 'Gary']
Note that the new lists returned from slicing a list are in reality shallow copies so contain references to elements from the original list.
Sorting a List
sort()
method of the list object returns nothing (None
) but modifies the original list by sorting in place. sort
method supports 3 optional parameters -- method to be used for sorting (cmp), function to be executed with key element (key) and the reverse
option. Syntax: sort(cmp, key, reserve)
.
>>> record ['Gary', 'Doe', 25, 'Network Ct, Twin Peaks, WA 90201', 140.32, '925-93-2176', 'John', 'Keats', 'Sears Tower, Chicago, IL 46371'] >>> record.sort() >>> record [25, 140.32, '925-93-2176', 'Doe', 'Gary', 'John', 'Keats', 'Network Ct, Twin Peaks, WA 90201', 'Sears Tower, Chicago, IL 46371'] >>> record=['Gary', 'Doe', 25, 'Network Ct, Twin Peaks, WA 90201', 140.32, '925-93-2176', 'John', 'Keats', 'Sears Tower, Chicago, IL 46371'] >>> record.sort(reverse=True) >>> record ['Sears Tower, Chicago, IL 46371', 'Network Ct, Twin Peaks, WA 90201', 'Keats', 'John', 'Gary', 'Doe', '925-93-2176', 140.32, 25]
If you don't want the original list to be modified, one option is to make a copy of the list and call sort()
on the copy. Another option is to use the built-in sorted()
function. The sorted()
function returns the sorted list. It also accepts reverse
parameter similar to sort()
of the list.
>>> record=['Gary', 'Doe', 25, 'Network Ct, Twin Peaks, WA 90201', 140.32, '925-93-2176', 'John', 'Keats', 'Sears Tower, Chicago, IL 46371'] >>> import copy >>> recorddup = copy.copy(record) >>> recorddup.sort() >>> recorddup [25, 140.32, '925-93-2176', 'Doe', 'Gary', 'John', 'Keats', 'Network Ct, Twin Peaks, WA 90201', 'Sears Tower, Chicago, IL 46371'] >>> record ['Gary', 'Doe', 25, 'Network Ct, Twin Peaks, WA 90201', 140.32, '925-93-2176', 'John', 'Keats', 'Sears Tower, Chicago, IL 46371'] >>> sorted(record) [25, 140.32, '925-93-2176', 'Doe', 'Gary', 'John', 'Keats', 'Network Ct, Twin Peaks, WA 90201', 'Sears Tower, Chicago, IL 46371'] >>> sorted(record, reverse=True) ['Sears Tower, Chicago, IL 46371', 'Network Ct, Twin Peaks, WA 90201', 'Keats', 'John', 'Gary', 'Doe', '925-93-2176', 140.32, 25]
Comparing Lists
Lists can be compared for equality using ==
operator. Lexicographical comparison is possible with the help of less-than and greater-than operators.
>>> record ['Gary', 'Doe', 25, 'Network Ct, Twin Peaks, WA 90201', 140.32, '925-93-2176', 'John', 'Keats', 'Sears Tower, Chicago, IL 46371'] >>> recorddup [25, 140.32, '925-93-2176', 'Doe', 'Gary', 'John', 'Keats', 'Network Ct, Twin Peaks, WA 90201', 'Sears Tower, Chicago, IL 46371'] >>> record == recorddup False >>> sorted(record) == recorddup True >>> record > recorddup True >>> record < recorddup False
Labels: Python List Quick+Overview
WORD | MEANING |
---|---|
convalescent | (of a person) recovering from an illness or operation |
forlorn | pitifully sad and abandoned or lonely |
insouciant | showing a casual lack of concern; indifferent |
groundswell | a buildup of opinion or feeling in a large section of the population |
bluster | talk in a loud, aggressive, or indignant way with little effect |
inchoate | just begun and so not fully formed or developed; rudimentary |
exult | show or feel elation or jubilation esp as the result of a success |
bleat | speak or complain in a weak, querulous, or foolish way |
hearken | listen |
finagle | obtain something by devious or dishonest means |
cruft | badly designed, unnecessarily complicated, or unwanted code or software |
corral | gather together and confine (a group of people or things) |
throb | feel pain in a series of regular beats |
recalcitrant | having an obstinately uncooperative attitude toward authority or discipline |
prescient | having or showing knowledge of events before they take place |
newspeak | ambiguous euphemistic language used chiefly in political propaganda |
apparatchik | an official in a large political organization |
twaddle | trivial or foolish speech or writing; nonsense |
imbroglio | an extremely confused, complicated, or embarrassing situation |
serenade | a piece of music sung or played in the open air, typically by a man at night under the window of his lover |
trenchant | vigorous or incisive in expression or style |
kerfuffle | a commotion or fuss, especially one caused by conflicting views |
denouement | the final part of a play, movie, or narrative in which the strands of the plot are drawn together and matters are explained or resolved |
flagrant | (of something considered wrong or immoral) shockingly noticeable or evident; obvious; glaring |
perp walk | an act of walking into or out of a police station, courthouse, etc., that a person in police custody is made to perform for the benefit of the media |
Labels: words vocabulary word+list GRE TOEFL SAT GMAT
2004-2019 |