[{"data":1,"prerenderedAt":2437},["ShallowReactive",2],{"doc-\u002Flearn\u002Flist-comprehensions-in-python-explained":3},{"id":4,"title":5,"body":6,"description":2430,"extension":2431,"meta":2432,"navigation":572,"path":2433,"seo":2434,"stem":2435,"__hash__":2436},"content\u002Flearn\u002Flist-comprehensions-in-python-explained.md","List Comprehensions in Python Explained",{"type":7,"value":8,"toc":2391},"minimark",[9,13,17,20,33,41,46,149,152,185,188,192,195,209,212,274,276,299,308,312,315,339,342,362,365,385,388,455,457,482,485,505,515,519,522,530,626,628,653,657,724,726,750,753,760,764,767,770,798,804,808,877,879,910,914,1012,1014,1049,1053,1138,1140,1158,1165,1169,1172,1175,1179,1242,1244,1268,1272,1354,1356,1391,1395,1456,1458,1482,1485,1489,1492,1520,1522,1582,1585,1610,1612,1633,1636,1640,1643,1657,1660,1677,1681,1764,1766,1788,1792,1914,1916,1935,1943,1950,1954,1957,1961,1964,1967,2000,2003,2039,2043,2046,2059,2061,2107,2109,2146,2154,2157,2160,2221,2223,2262,2273,2277,2280,2283,2293,2297,2301,2304,2308,2311,2315,2318,2344,2348,2354,2358,2387],[10,11,5],"h1",{"id":12},"list-comprehensions-in-python-explained",[14,15,16],"p",{},"A list comprehension is a short way to create a new list in Python.",[14,18,19],{},"It lets you:",[21,22,23,27,30],"ul",{},[24,25,26],"li",{},"loop through values",[24,28,29],{},"optionally filter them",[24,31,32],{},"build a new list in one expression",[14,34,35,36,40],{},"List comprehensions are useful when you want to transform or filter data in a clear, compact way. They are best for simple cases. If the logic becomes hard to read, a normal ",[37,38,39],"code",{},"for"," loop is usually the better choice.",[42,43,45],"h2",{"id":44},"quick-example","Quick example",[47,48,53],"pre",{"className":49,"code":50,"language":51,"meta":52,"style":52},"language-python shiki shiki-themes material-theme-lighter github-light github-dark","numbers = [1, 2, 3, 4, 5]\nsquares = [n * n for n in numbers]\nprint(squares)\n","python","",[37,54,55,100,132],{"__ignoreMap":52},[56,57,60,64,68,72,76,79,82,84,87,89,92,94,97],"span",{"class":58,"line":59},"line",1,[56,61,63],{"class":62},"su5hD","numbers ",[56,65,67],{"class":66},"smGrS","=",[56,69,71],{"class":70},"sP7_E"," [",[56,73,75],{"class":74},"srdBf","1",[56,77,78],{"class":70},",",[56,80,81],{"class":74}," 2",[56,83,78],{"class":70},[56,85,86],{"class":74}," 3",[56,88,78],{"class":70},[56,90,91],{"class":74}," 4",[56,93,78],{"class":70},[56,95,96],{"class":74}," 5",[56,98,99],{"class":70},"]\n",[56,101,103,106,108,110,113,116,119,122,124,127,130],{"class":58,"line":102},2,[56,104,105],{"class":62},"squares ",[56,107,67],{"class":66},[56,109,71],{"class":70},[56,111,112],{"class":62},"n ",[56,114,115],{"class":66},"*",[56,117,118],{"class":62}," n ",[56,120,39],{"class":121},"sVHd0",[56,123,118],{"class":62},[56,125,126],{"class":121},"in",[56,128,129],{"class":62}," numbers",[56,131,99],{"class":70},[56,133,135,139,142,146],{"class":58,"line":134},3,[56,136,138],{"class":137},"sptTA","print",[56,140,141],{"class":70},"(",[56,143,145],{"class":144},"slqww","squares",[56,147,148],{"class":70},")\n",[14,150,151],{},"Output:",[47,153,155],{"className":49,"code":154,"language":51,"meta":52,"style":52},"[1, 4, 9, 16, 25]\n",[37,156,157],{"__ignoreMap":52},[56,158,159,162,164,166,168,170,173,175,178,180,183],{"class":58,"line":59},[56,160,161],{"class":70},"[",[56,163,75],{"class":74},[56,165,78],{"class":70},[56,167,91],{"class":74},[56,169,78],{"class":70},[56,171,172],{"class":74}," 9",[56,174,78],{"class":70},[56,176,177],{"class":74}," 16",[56,179,78],{"class":70},[56,181,182],{"class":74}," 25",[56,184,99],{"class":70},[14,186,187],{},"Use a list comprehension when you want to build a new list from another iterable in one clear line.",[42,189,191],{"id":190},"what-a-list-comprehension-is","What a list comprehension is",[14,193,194],{},"A list comprehension is:",[21,196,197,200,203,206],{},[24,198,199],{},"a short way to create a new list",[24,201,202],{},"a combination of looping and optional filtering",[24,204,205],{},"something that returns a real list object",[24,207,208],{},"best for simple transformations and simple filtering",[14,210,211],{},"For example, if you want a list of doubled numbers, you can build it directly:",[47,213,215],{"className":49,"code":214,"language":51,"meta":52,"style":52},"numbers = [1, 2, 3]\ndoubled = [n * 2 for n in numbers]\nprint(doubled)\n",[37,216,217,237,263],{"__ignoreMap":52},[56,218,219,221,223,225,227,229,231,233,235],{"class":58,"line":59},[56,220,63],{"class":62},[56,222,67],{"class":66},[56,224,71],{"class":70},[56,226,75],{"class":74},[56,228,78],{"class":70},[56,230,81],{"class":74},[56,232,78],{"class":70},[56,234,86],{"class":74},[56,236,99],{"class":70},[56,238,239,242,244,246,248,250,252,255,257,259,261],{"class":58,"line":102},[56,240,241],{"class":62},"doubled ",[56,243,67],{"class":66},[56,245,71],{"class":70},[56,247,112],{"class":62},[56,249,115],{"class":66},[56,251,81],{"class":74},[56,253,254],{"class":121}," for",[56,256,118],{"class":62},[56,258,126],{"class":121},[56,260,129],{"class":62},[56,262,99],{"class":70},[56,264,265,267,269,272],{"class":58,"line":134},[56,266,138],{"class":137},[56,268,141],{"class":70},[56,270,271],{"class":144},"doubled",[56,273,148],{"class":70},[14,275,151],{},[47,277,279],{"className":49,"code":278,"language":51,"meta":52,"style":52},"[2, 4, 6]\n",[37,280,281],{"__ignoreMap":52},[56,282,283,285,288,290,292,294,297],{"class":58,"line":59},[56,284,161],{"class":70},[56,286,287],{"class":74},"2",[56,289,78],{"class":70},[56,291,91],{"class":74},[56,293,78],{"class":70},[56,295,296],{"class":74}," 6",[56,298,99],{"class":70},[14,300,301,302,307],{},"If you are new to lists, see ",[303,304,306],"a",{"href":305},"\u002Flearn\u002Fpython-lists-explained-beginner-guide\u002F","Python lists explained",".",[42,309,311],{"id":310},"basic-syntax","Basic syntax",[14,313,314],{},"The basic pattern is:",[47,316,318],{"className":49,"code":317,"language":51,"meta":52,"style":52},"[expression for item in iterable]\n",[37,319,320],{"__ignoreMap":52},[56,321,322,324,327,329,332,334,337],{"class":58,"line":59},[56,323,161],{"class":70},[56,325,326],{"class":62},"expression ",[56,328,39],{"class":121},[56,330,331],{"class":62}," item ",[56,333,126],{"class":121},[56,335,336],{"class":62}," iterable",[56,338,99],{"class":70},[14,340,341],{},"Here is what each part means:",[21,343,344,350,356],{},[24,345,346,349],{},[37,347,348],{},"expression"," is the value that gets added to the new list",[24,351,352,355],{},[37,353,354],{},"item"," is each value taken one at a time",[24,357,358,361],{},[37,359,360],{},"iterable"," is the thing you loop over",[14,363,364],{},"An iterable can be:",[21,366,367,370,373,376,382],{},[24,368,369],{},"a list",[24,371,372],{},"a tuple",[24,374,375],{},"a string",[24,377,378,379],{},"a ",[37,380,381],{},"range()",[24,383,384],{},"other objects you can loop through",[14,386,387],{},"Example:",[47,389,391],{"className":49,"code":390,"language":51,"meta":52,"style":52},"numbers = [1, 2, 3, 4]\nresult = [n + 1 for n in numbers]\nprint(result)\n",[37,392,393,417,444],{"__ignoreMap":52},[56,394,395,397,399,401,403,405,407,409,411,413,415],{"class":58,"line":59},[56,396,63],{"class":62},[56,398,67],{"class":66},[56,400,71],{"class":70},[56,402,75],{"class":74},[56,404,78],{"class":70},[56,406,81],{"class":74},[56,408,78],{"class":70},[56,410,86],{"class":74},[56,412,78],{"class":70},[56,414,91],{"class":74},[56,416,99],{"class":70},[56,418,419,422,424,426,428,431,434,436,438,440,442],{"class":58,"line":102},[56,420,421],{"class":62},"result ",[56,423,67],{"class":66},[56,425,71],{"class":70},[56,427,112],{"class":62},[56,429,430],{"class":66},"+",[56,432,433],{"class":74}," 1",[56,435,254],{"class":121},[56,437,118],{"class":62},[56,439,126],{"class":121},[56,441,129],{"class":62},[56,443,99],{"class":70},[56,445,446,448,450,453],{"class":58,"line":134},[56,447,138],{"class":137},[56,449,141],{"class":70},[56,451,452],{"class":144},"result",[56,454,148],{"class":70},[14,456,151],{},[47,458,460],{"className":49,"code":459,"language":51,"meta":52,"style":52},"[2, 3, 4, 5]\n",[37,461,462],{"__ignoreMap":52},[56,463,464,466,468,470,472,474,476,478,480],{"class":58,"line":59},[56,465,161],{"class":70},[56,467,287],{"class":74},[56,469,78],{"class":70},[56,471,86],{"class":74},[56,473,78],{"class":70},[56,475,91],{"class":74},[56,477,78],{"class":70},[56,479,96],{"class":74},[56,481,99],{"class":70},[14,483,484],{},"In this example:",[21,486,487,493,499],{},[24,488,489,492],{},[37,490,491],{},"numbers"," is the iterable",[24,494,495,498],{},[37,496,497],{},"n"," is each item",[24,500,501,504],{},[37,502,503],{},"n + 1"," is the expression",[14,506,507,508,510,511,307],{},"If ",[37,509,381],{}," is new to you, read ",[303,512,514],{"href":513},"\u002Freference\u002Fpython-range-function-explained\u002F","Python range() function explained",[42,516,518],{"id":517},"compare-with-a-normal-for-loop","Compare with a normal for loop",[14,520,521],{},"It helps to see the longer version first.",[523,524,526,527,529],"h3",{"id":525},"normal-for-loop","Normal ",[37,528,39],{}," loop",[47,531,533],{"className":49,"code":532,"language":51,"meta":52,"style":52},"numbers = [1, 2, 3, 4]\nsquares = []\n\nfor n in numbers:\n    squares.append(n * n)\n\nprint(squares)\n",[37,534,535,559,568,574,588,610,615],{"__ignoreMap":52},[56,536,537,539,541,543,545,547,549,551,553,555,557],{"class":58,"line":59},[56,538,63],{"class":62},[56,540,67],{"class":66},[56,542,71],{"class":70},[56,544,75],{"class":74},[56,546,78],{"class":70},[56,548,81],{"class":74},[56,550,78],{"class":70},[56,552,86],{"class":74},[56,554,78],{"class":70},[56,556,91],{"class":74},[56,558,99],{"class":70},[56,560,561,563,565],{"class":58,"line":102},[56,562,105],{"class":62},[56,564,67],{"class":66},[56,566,567],{"class":70}," []\n",[56,569,570],{"class":58,"line":134},[56,571,573],{"emptyLinePlaceholder":572},true,"\n",[56,575,577,579,581,583,585],{"class":58,"line":576},4,[56,578,39],{"class":121},[56,580,118],{"class":62},[56,582,126],{"class":121},[56,584,129],{"class":62},[56,586,587],{"class":70},":\n",[56,589,591,594,596,599,601,603,605,608],{"class":58,"line":590},5,[56,592,593],{"class":62},"    squares",[56,595,307],{"class":70},[56,597,598],{"class":144},"append",[56,600,141],{"class":70},[56,602,112],{"class":144},[56,604,115],{"class":66},[56,606,607],{"class":144}," n",[56,609,148],{"class":70},[56,611,613],{"class":58,"line":612},6,[56,614,573],{"emptyLinePlaceholder":572},[56,616,618,620,622,624],{"class":58,"line":617},7,[56,619,138],{"class":137},[56,621,141],{"class":70},[56,623,145],{"class":144},[56,625,148],{"class":70},[14,627,151],{},[47,629,631],{"className":49,"code":630,"language":51,"meta":52,"style":52},"[1, 4, 9, 16]\n",[37,632,633],{"__ignoreMap":52},[56,634,635,637,639,641,643,645,647,649,651],{"class":58,"line":59},[56,636,161],{"class":70},[56,638,75],{"class":74},[56,640,78],{"class":70},[56,642,91],{"class":74},[56,644,78],{"class":70},[56,646,172],{"class":74},[56,648,78],{"class":70},[56,650,177],{"class":74},[56,652,99],{"class":70},[523,654,656],{"id":655},"matching-list-comprehension","Matching list comprehension",[47,658,660],{"className":49,"code":659,"language":51,"meta":52,"style":52},"numbers = [1, 2, 3, 4]\nsquares = [n * n for n in numbers]\n\nprint(squares)\n",[37,661,662,686,710,714],{"__ignoreMap":52},[56,663,664,666,668,670,672,674,676,678,680,682,684],{"class":58,"line":59},[56,665,63],{"class":62},[56,667,67],{"class":66},[56,669,71],{"class":70},[56,671,75],{"class":74},[56,673,78],{"class":70},[56,675,81],{"class":74},[56,677,78],{"class":70},[56,679,86],{"class":74},[56,681,78],{"class":70},[56,683,91],{"class":74},[56,685,99],{"class":70},[56,687,688,690,692,694,696,698,700,702,704,706,708],{"class":58,"line":102},[56,689,105],{"class":62},[56,691,67],{"class":66},[56,693,71],{"class":70},[56,695,112],{"class":62},[56,697,115],{"class":66},[56,699,118],{"class":62},[56,701,39],{"class":121},[56,703,118],{"class":62},[56,705,126],{"class":121},[56,707,129],{"class":62},[56,709,99],{"class":70},[56,711,712],{"class":58,"line":134},[56,713,573],{"emptyLinePlaceholder":572},[56,715,716,718,720,722],{"class":58,"line":576},[56,717,138],{"class":137},[56,719,141],{"class":70},[56,721,145],{"class":144},[56,723,148],{"class":70},[14,725,151],{},[47,727,728],{"className":49,"code":630,"language":51,"meta":52,"style":52},[37,729,730],{"__ignoreMap":52},[56,731,732,734,736,738,740,742,744,746,748],{"class":58,"line":59},[56,733,161],{"class":70},[56,735,75],{"class":74},[56,737,78],{"class":70},[56,739,91],{"class":74},[56,741,78],{"class":70},[56,743,172],{"class":74},[56,745,78],{"class":70},[56,747,177],{"class":74},[56,749,99],{"class":70},[14,751,752],{},"Both versions produce the same result.",[14,754,755,756,307],{},"The list comprehension is shorter, but shorter is not always better. Use it when it stays easy to read. If you need help with loops first, see ",[303,757,759],{"href":758},"\u002Flearn\u002Fpython-for-loops-explained\u002F","Python for loops explained",[42,761,763],{"id":762},"using-conditions","Using conditions",[14,765,766],{},"You can add a condition to keep only some items.",[14,768,769],{},"The pattern is:",[47,771,773],{"className":49,"code":772,"language":51,"meta":52,"style":52},"[expression for item in iterable if condition]\n",[37,774,775],{"__ignoreMap":52},[56,776,777,779,781,783,785,787,790,793,796],{"class":58,"line":59},[56,778,161],{"class":70},[56,780,326],{"class":62},[56,782,39],{"class":121},[56,784,331],{"class":62},[56,786,126],{"class":121},[56,788,789],{"class":62}," iterable ",[56,791,792],{"class":121},"if",[56,794,795],{"class":62}," condition",[56,797,99],{"class":70},[14,799,800,801,803],{},"The ",[37,802,792],{}," part filters the items before they are added to the new list.",[523,805,807],{"id":806},"example-keep-only-even-numbers","Example: keep only even numbers",[47,809,811],{"className":49,"code":810,"language":51,"meta":52,"style":52},"numbers = range(10)\nevens = [n for n in numbers if n % 2 == 0]\nprint(evens)\n",[37,812,813,829,866],{"__ignoreMap":52},[56,814,815,817,819,822,824,827],{"class":58,"line":59},[56,816,63],{"class":62},[56,818,67],{"class":66},[56,820,821],{"class":137}," range",[56,823,141],{"class":70},[56,825,826],{"class":74},"10",[56,828,148],{"class":70},[56,830,831,834,836,838,840,842,844,846,849,851,853,856,858,861,864],{"class":58,"line":102},[56,832,833],{"class":62},"evens ",[56,835,67],{"class":66},[56,837,71],{"class":70},[56,839,112],{"class":62},[56,841,39],{"class":121},[56,843,118],{"class":62},[56,845,126],{"class":121},[56,847,848],{"class":62}," numbers ",[56,850,792],{"class":121},[56,852,118],{"class":62},[56,854,855],{"class":66},"%",[56,857,81],{"class":74},[56,859,860],{"class":66}," ==",[56,862,863],{"class":74}," 0",[56,865,99],{"class":70},[56,867,868,870,872,875],{"class":58,"line":134},[56,869,138],{"class":137},[56,871,141],{"class":70},[56,873,874],{"class":144},"evens",[56,876,148],{"class":70},[14,878,151],{},[47,880,882],{"className":49,"code":881,"language":51,"meta":52,"style":52},"[0, 2, 4, 6, 8]\n",[37,883,884],{"__ignoreMap":52},[56,885,886,888,891,893,895,897,899,901,903,905,908],{"class":58,"line":59},[56,887,161],{"class":70},[56,889,890],{"class":74},"0",[56,892,78],{"class":70},[56,894,81],{"class":74},[56,896,78],{"class":70},[56,898,91],{"class":74},[56,900,78],{"class":70},[56,902,296],{"class":74},[56,904,78],{"class":70},[56,906,907],{"class":74}," 8",[56,909,99],{"class":70},[523,911,913],{"id":912},"example-keep-only-non-empty-strings","Example: keep only non-empty strings",[47,915,917],{"className":49,"code":916,"language":51,"meta":52,"style":52},"words = [\"apple\", \"\", \"banana\", \"\", \"grape\"]\nnon_empty = [word for word in words if word != \"\"]\nprint(non_empty)\n",[37,918,919,968,1001],{"__ignoreMap":52},[56,920,921,924,926,928,932,936,938,940,943,945,948,951,953,955,957,959,961,964,966],{"class":58,"line":59},[56,922,923],{"class":62},"words ",[56,925,67],{"class":66},[56,927,71],{"class":70},[56,929,931],{"class":930},"sjJ54","\"",[56,933,935],{"class":934},"s_sjI","apple",[56,937,931],{"class":930},[56,939,78],{"class":70},[56,941,942],{"class":930}," \"\"",[56,944,78],{"class":70},[56,946,947],{"class":930}," \"",[56,949,950],{"class":934},"banana",[56,952,931],{"class":930},[56,954,78],{"class":70},[56,956,942],{"class":930},[56,958,78],{"class":70},[56,960,947],{"class":930},[56,962,963],{"class":934},"grape",[56,965,931],{"class":930},[56,967,99],{"class":70},[56,969,970,973,975,977,980,982,985,987,990,992,994,997,999],{"class":58,"line":102},[56,971,972],{"class":62},"non_empty ",[56,974,67],{"class":66},[56,976,71],{"class":70},[56,978,979],{"class":62},"word ",[56,981,39],{"class":121},[56,983,984],{"class":62}," word ",[56,986,126],{"class":121},[56,988,989],{"class":62}," words ",[56,991,792],{"class":121},[56,993,984],{"class":62},[56,995,996],{"class":66},"!=",[56,998,942],{"class":930},[56,1000,99],{"class":70},[56,1002,1003,1005,1007,1010],{"class":58,"line":134},[56,1004,138],{"class":137},[56,1006,141],{"class":70},[56,1008,1009],{"class":144},"non_empty",[56,1011,148],{"class":70},[14,1013,151],{},[47,1015,1017],{"className":49,"code":1016,"language":51,"meta":52,"style":52},"['apple', 'banana', 'grape']\n",[37,1018,1019],{"__ignoreMap":52},[56,1020,1021,1023,1026,1028,1030,1032,1035,1037,1039,1041,1043,1045,1047],{"class":58,"line":59},[56,1022,161],{"class":70},[56,1024,1025],{"class":930},"'",[56,1027,935],{"class":934},[56,1029,1025],{"class":930},[56,1031,78],{"class":70},[56,1033,1034],{"class":930}," '",[56,1036,950],{"class":934},[56,1038,1025],{"class":930},[56,1040,78],{"class":70},[56,1042,1034],{"class":930},[56,1044,963],{"class":934},[56,1046,1025],{"class":930},[56,1048,99],{"class":70},[523,1050,1052],{"id":1051},"example-keep-only-positive-values","Example: keep only positive values",[47,1054,1056],{"className":49,"code":1055,"language":51,"meta":52,"style":52},"values = [-2, 5, 0, 7, -1]\npositive = [v for v in values if v > 0]\nprint(positive)\n",[37,1057,1058,1094,1127],{"__ignoreMap":52},[56,1059,1060,1063,1065,1067,1070,1072,1074,1076,1078,1080,1082,1085,1087,1090,1092],{"class":58,"line":59},[56,1061,1062],{"class":62},"values ",[56,1064,67],{"class":66},[56,1066,71],{"class":70},[56,1068,1069],{"class":66},"-",[56,1071,287],{"class":74},[56,1073,78],{"class":70},[56,1075,96],{"class":74},[56,1077,78],{"class":70},[56,1079,863],{"class":74},[56,1081,78],{"class":70},[56,1083,1084],{"class":74}," 7",[56,1086,78],{"class":70},[56,1088,1089],{"class":66}," -",[56,1091,75],{"class":74},[56,1093,99],{"class":70},[56,1095,1096,1099,1101,1103,1106,1108,1111,1113,1116,1118,1120,1123,1125],{"class":58,"line":102},[56,1097,1098],{"class":62},"positive ",[56,1100,67],{"class":66},[56,1102,71],{"class":70},[56,1104,1105],{"class":62},"v ",[56,1107,39],{"class":121},[56,1109,1110],{"class":62}," v ",[56,1112,126],{"class":121},[56,1114,1115],{"class":62}," values ",[56,1117,792],{"class":121},[56,1119,1110],{"class":62},[56,1121,1122],{"class":66},">",[56,1124,863],{"class":74},[56,1126,99],{"class":70},[56,1128,1129,1131,1133,1136],{"class":58,"line":134},[56,1130,138],{"class":137},[56,1132,141],{"class":70},[56,1134,1135],{"class":144},"positive",[56,1137,148],{"class":70},[14,1139,151],{},[47,1141,1143],{"className":49,"code":1142,"language":51,"meta":52,"style":52},"[5, 7]\n",[37,1144,1145],{"__ignoreMap":52},[56,1146,1147,1149,1152,1154,1156],{"class":58,"line":59},[56,1148,161],{"class":70},[56,1150,1151],{"class":74},"5",[56,1153,78],{"class":70},[56,1155,1084],{"class":74},[56,1157,99],{"class":70},[14,1159,1160,1161,307],{},"If you want more filtering examples, see ",[303,1162,1164],{"href":1163},"\u002Fhow-to\u002Fhow-to-filter-a-list-in-python\u002F","how to filter a list in Python",[42,1166,1168],{"id":1167},"changing-each-item","Changing each item",[14,1170,1171],{},"The expression part is where you change each value.",[14,1173,1174],{},"This is useful for simple one-step transformations.",[523,1176,1178],{"id":1177},"square-numbers","Square numbers",[47,1180,1182],{"className":49,"code":1181,"language":51,"meta":52,"style":52},"numbers = [1, 2, 3, 4]\nsquares = [n * n for n in numbers]\nprint(squares)\n",[37,1183,1184,1208,1232],{"__ignoreMap":52},[56,1185,1186,1188,1190,1192,1194,1196,1198,1200,1202,1204,1206],{"class":58,"line":59},[56,1187,63],{"class":62},[56,1189,67],{"class":66},[56,1191,71],{"class":70},[56,1193,75],{"class":74},[56,1195,78],{"class":70},[56,1197,81],{"class":74},[56,1199,78],{"class":70},[56,1201,86],{"class":74},[56,1203,78],{"class":70},[56,1205,91],{"class":74},[56,1207,99],{"class":70},[56,1209,1210,1212,1214,1216,1218,1220,1222,1224,1226,1228,1230],{"class":58,"line":102},[56,1211,105],{"class":62},[56,1213,67],{"class":66},[56,1215,71],{"class":70},[56,1217,112],{"class":62},[56,1219,115],{"class":66},[56,1221,118],{"class":62},[56,1223,39],{"class":121},[56,1225,118],{"class":62},[56,1227,126],{"class":121},[56,1229,129],{"class":62},[56,1231,99],{"class":70},[56,1233,1234,1236,1238,1240],{"class":58,"line":134},[56,1235,138],{"class":137},[56,1237,141],{"class":70},[56,1239,145],{"class":144},[56,1241,148],{"class":70},[14,1243,151],{},[47,1245,1246],{"className":49,"code":630,"language":51,"meta":52,"style":52},[37,1247,1248],{"__ignoreMap":52},[56,1249,1250,1252,1254,1256,1258,1260,1262,1264,1266],{"class":58,"line":59},[56,1251,161],{"class":70},[56,1253,75],{"class":74},[56,1255,78],{"class":70},[56,1257,91],{"class":74},[56,1259,78],{"class":70},[56,1261,172],{"class":74},[56,1263,78],{"class":70},[56,1265,177],{"class":74},[56,1267,99],{"class":70},[523,1269,1271],{"id":1270},"convert-strings-to-lowercase","Convert strings to lowercase",[47,1273,1275],{"className":49,"code":1274,"language":51,"meta":52,"style":52},"words = [\"PYTHON\", \"List\", \"Comprehension\"]\nlowercase_words = [word.lower() for word in words]\nprint(lowercase_words)\n",[37,1276,1277,1312,1343],{"__ignoreMap":52},[56,1278,1279,1281,1283,1285,1287,1290,1292,1294,1296,1299,1301,1303,1305,1308,1310],{"class":58,"line":59},[56,1280,923],{"class":62},[56,1282,67],{"class":66},[56,1284,71],{"class":70},[56,1286,931],{"class":930},[56,1288,1289],{"class":934},"PYTHON",[56,1291,931],{"class":930},[56,1293,78],{"class":70},[56,1295,947],{"class":930},[56,1297,1298],{"class":934},"List",[56,1300,931],{"class":930},[56,1302,78],{"class":70},[56,1304,947],{"class":930},[56,1306,1307],{"class":934},"Comprehension",[56,1309,931],{"class":930},[56,1311,99],{"class":70},[56,1313,1314,1317,1319,1321,1324,1326,1329,1332,1334,1336,1338,1341],{"class":58,"line":102},[56,1315,1316],{"class":62},"lowercase_words ",[56,1318,67],{"class":66},[56,1320,71],{"class":70},[56,1322,1323],{"class":62},"word",[56,1325,307],{"class":70},[56,1327,1328],{"class":144},"lower",[56,1330,1331],{"class":70},"()",[56,1333,254],{"class":121},[56,1335,984],{"class":62},[56,1337,126],{"class":121},[56,1339,1340],{"class":62}," words",[56,1342,99],{"class":70},[56,1344,1345,1347,1349,1352],{"class":58,"line":134},[56,1346,138],{"class":137},[56,1348,141],{"class":70},[56,1350,1351],{"class":144},"lowercase_words",[56,1353,148],{"class":70},[14,1355,151],{},[47,1357,1359],{"className":49,"code":1358,"language":51,"meta":52,"style":52},"['python', 'list', 'comprehension']\n",[37,1360,1361],{"__ignoreMap":52},[56,1362,1363,1365,1367,1369,1371,1373,1375,1378,1380,1382,1384,1387,1389],{"class":58,"line":59},[56,1364,161],{"class":70},[56,1366,1025],{"class":930},[56,1368,51],{"class":934},[56,1370,1025],{"class":930},[56,1372,78],{"class":70},[56,1374,1034],{"class":930},[56,1376,1377],{"class":934},"list",[56,1379,1025],{"class":930},[56,1381,78],{"class":70},[56,1383,1034],{"class":930},[56,1385,1386],{"class":934},"comprehension",[56,1388,1025],{"class":930},[56,1390,99],{"class":70},[523,1392,1394],{"id":1393},"add-1-to-each-number","Add 1 to each number",[47,1396,1398],{"className":49,"code":1397,"language":51,"meta":52,"style":52},"numbers = [10, 20, 30]\nresult = [n + 1 for n in numbers]\nprint(result)\n",[37,1399,1400,1422,1446],{"__ignoreMap":52},[56,1401,1402,1404,1406,1408,1410,1412,1415,1417,1420],{"class":58,"line":59},[56,1403,63],{"class":62},[56,1405,67],{"class":66},[56,1407,71],{"class":70},[56,1409,826],{"class":74},[56,1411,78],{"class":70},[56,1413,1414],{"class":74}," 20",[56,1416,78],{"class":70},[56,1418,1419],{"class":74}," 30",[56,1421,99],{"class":70},[56,1423,1424,1426,1428,1430,1432,1434,1436,1438,1440,1442,1444],{"class":58,"line":102},[56,1425,421],{"class":62},[56,1427,67],{"class":66},[56,1429,71],{"class":70},[56,1431,112],{"class":62},[56,1433,430],{"class":66},[56,1435,433],{"class":74},[56,1437,254],{"class":121},[56,1439,118],{"class":62},[56,1441,126],{"class":121},[56,1443,129],{"class":62},[56,1445,99],{"class":70},[56,1447,1448,1450,1452,1454],{"class":58,"line":134},[56,1449,138],{"class":137},[56,1451,141],{"class":70},[56,1453,452],{"class":144},[56,1455,148],{"class":70},[14,1457,151],{},[47,1459,1461],{"className":49,"code":1460,"language":51,"meta":52,"style":52},"[11, 21, 31]\n",[37,1462,1463],{"__ignoreMap":52},[56,1464,1465,1467,1470,1472,1475,1477,1480],{"class":58,"line":59},[56,1466,161],{"class":70},[56,1468,1469],{"class":74},"11",[56,1471,78],{"class":70},[56,1473,1474],{"class":74}," 21",[56,1476,78],{"class":70},[56,1478,1479],{"class":74}," 31",[56,1481,99],{"class":70},[14,1483,1484],{},"These examples are simple and readable. That is the best use case for list comprehensions.",[42,1486,1488],{"id":1487},"reading-list-comprehensions-step-by-step","Reading list comprehensions step by step",[14,1490,1491],{},"A list comprehension can look confusing at first. A good way to read it is in this order:",[1493,1494,1495,1505,1514],"ol",{},[24,1496,1497,1498,1500,1501,1504],{},"Start with the ",[37,1499,39],{}," part",[1502,1503],"br",{},"\nAsk: where do the values come from?",[24,1506,1507,1508,1510,1511,1513],{},"Check the ",[37,1509,792],{}," part, if there is one",[1502,1512],{},"\nAsk: which values are kept?",[24,1515,1516,1517,1519],{},"Read the expression at the beginning",[1502,1518],{},"\nAsk: what gets added to the new list?",[14,1521,387],{},[47,1523,1525],{"className":49,"code":1524,"language":51,"meta":52,"style":52},"result = [n * 2 for n in range(6) if n % 2 == 0]\nprint(result)\n",[37,1526,1527,1572],{"__ignoreMap":52},[56,1528,1529,1531,1533,1535,1537,1539,1541,1543,1545,1547,1549,1551,1554,1557,1560,1562,1564,1566,1568,1570],{"class":58,"line":59},[56,1530,421],{"class":62},[56,1532,67],{"class":66},[56,1534,71],{"class":70},[56,1536,112],{"class":62},[56,1538,115],{"class":66},[56,1540,81],{"class":74},[56,1542,254],{"class":121},[56,1544,118],{"class":62},[56,1546,126],{"class":121},[56,1548,821],{"class":137},[56,1550,141],{"class":70},[56,1552,1553],{"class":74},"6",[56,1555,1556],{"class":70},")",[56,1558,1559],{"class":121}," if",[56,1561,118],{"class":62},[56,1563,855],{"class":66},[56,1565,81],{"class":74},[56,1567,860],{"class":66},[56,1569,863],{"class":74},[56,1571,99],{"class":70},[56,1573,1574,1576,1578,1580],{"class":58,"line":102},[56,1575,138],{"class":137},[56,1577,141],{"class":70},[56,1579,452],{"class":144},[56,1581,148],{"class":70},[14,1583,1584],{},"Read it step by step:",[21,1586,1587,1598,1604],{},[24,1588,1589,1592,1593,1595,1596],{},[37,1590,1591],{},"for n in range(6)"," means values come from ",[37,1594,890],{}," to ",[37,1597,1151],{},[24,1599,1600,1603],{},[37,1601,1602],{},"if n % 2 == 0"," means keep only even numbers",[24,1605,1606,1609],{},[37,1607,1608],{},"n * 2"," means double each remaining number",[14,1611,151],{},[47,1613,1615],{"className":49,"code":1614,"language":51,"meta":52,"style":52},"[0, 4, 8]\n",[37,1616,1617],{"__ignoreMap":52},[56,1618,1619,1621,1623,1625,1627,1629,1631],{"class":58,"line":59},[56,1620,161],{"class":70},[56,1622,890],{"class":74},[56,1624,78],{"class":70},[56,1626,91],{"class":74},[56,1628,78],{"class":70},[56,1630,907],{"class":74},[56,1632,99],{"class":70},[14,1634,1635],{},"If a comprehension feels hard to read, rewrite it as a normal loop. That is a good habit for beginners.",[42,1637,1639],{"id":1638},"when-to-use-them-and-when-not-to","When to use them and when not to",[14,1641,1642],{},"Use list comprehensions when:",[21,1644,1645,1648,1651,1654],{},[24,1646,1647],{},"you are building a new list",[24,1649,1650],{},"the task is short and clear",[24,1652,1653],{},"you are doing a simple transformation",[24,1655,1656],{},"you are doing simple filtering",[14,1658,1659],{},"Do not use them when:",[21,1661,1662,1665,1668,1674],{},[24,1663,1664],{},"the logic is hard to read",[24,1666,1667],{},"you need many steps",[24,1669,1670,1671,1673],{},"you need complex ",[37,1672,792],{}," logic",[24,1675,1676],{},"a nested list comprehension makes the code confusing",[523,1678,1680],{"id":1679},"good-use","Good use",[47,1682,1684],{"className":49,"code":1683,"language":51,"meta":52,"style":52},"names = [\"Ana\", \"Ben\", \"Cara\"]\nlengths = [len(name) for name in names]\nprint(lengths)\n",[37,1685,1686,1722,1753],{"__ignoreMap":52},[56,1687,1688,1691,1693,1695,1697,1700,1702,1704,1706,1709,1711,1713,1715,1718,1720],{"class":58,"line":59},[56,1689,1690],{"class":62},"names ",[56,1692,67],{"class":66},[56,1694,71],{"class":70},[56,1696,931],{"class":930},[56,1698,1699],{"class":934},"Ana",[56,1701,931],{"class":930},[56,1703,78],{"class":70},[56,1705,947],{"class":930},[56,1707,1708],{"class":934},"Ben",[56,1710,931],{"class":930},[56,1712,78],{"class":70},[56,1714,947],{"class":930},[56,1716,1717],{"class":934},"Cara",[56,1719,931],{"class":930},[56,1721,99],{"class":70},[56,1723,1724,1727,1729,1731,1734,1736,1739,1741,1743,1746,1748,1751],{"class":58,"line":102},[56,1725,1726],{"class":62},"lengths ",[56,1728,67],{"class":66},[56,1730,71],{"class":70},[56,1732,1733],{"class":137},"len",[56,1735,141],{"class":70},[56,1737,1738],{"class":144},"name",[56,1740,1556],{"class":70},[56,1742,254],{"class":121},[56,1744,1745],{"class":62}," name ",[56,1747,126],{"class":121},[56,1749,1750],{"class":62}," names",[56,1752,99],{"class":70},[56,1754,1755,1757,1759,1762],{"class":58,"line":134},[56,1756,138],{"class":137},[56,1758,141],{"class":70},[56,1760,1761],{"class":144},"lengths",[56,1763,148],{"class":70},[14,1765,151],{},[47,1767,1769],{"className":49,"code":1768,"language":51,"meta":52,"style":52},"[3, 3, 4]\n",[37,1770,1771],{"__ignoreMap":52},[56,1772,1773,1775,1778,1780,1782,1784,1786],{"class":58,"line":59},[56,1774,161],{"class":70},[56,1776,1777],{"class":74},"3",[56,1779,78],{"class":70},[56,1781,86],{"class":74},[56,1783,78],{"class":70},[56,1785,91],{"class":74},[56,1787,99],{"class":70},[523,1789,1791],{"id":1790},"better-as-a-normal-loop","Better as a normal loop",[47,1793,1795],{"className":49,"code":1794,"language":51,"meta":52,"style":52},"numbers = [1, 2, 3, 4, 5]\nresults = []\n\nfor n in numbers:\n    if n % 2 == 0:\n        value = n * 10\n        results.append(value)\n\nprint(results)\n",[37,1796,1797,1825,1834,1838,1850,1867,1881,1897,1902],{"__ignoreMap":52},[56,1798,1799,1801,1803,1805,1807,1809,1811,1813,1815,1817,1819,1821,1823],{"class":58,"line":59},[56,1800,63],{"class":62},[56,1802,67],{"class":66},[56,1804,71],{"class":70},[56,1806,75],{"class":74},[56,1808,78],{"class":70},[56,1810,81],{"class":74},[56,1812,78],{"class":70},[56,1814,86],{"class":74},[56,1816,78],{"class":70},[56,1818,91],{"class":74},[56,1820,78],{"class":70},[56,1822,96],{"class":74},[56,1824,99],{"class":70},[56,1826,1827,1830,1832],{"class":58,"line":102},[56,1828,1829],{"class":62},"results ",[56,1831,67],{"class":66},[56,1833,567],{"class":70},[56,1835,1836],{"class":58,"line":134},[56,1837,573],{"emptyLinePlaceholder":572},[56,1839,1840,1842,1844,1846,1848],{"class":58,"line":576},[56,1841,39],{"class":121},[56,1843,118],{"class":62},[56,1845,126],{"class":121},[56,1847,129],{"class":62},[56,1849,587],{"class":70},[56,1851,1852,1855,1857,1859,1861,1863,1865],{"class":58,"line":590},[56,1853,1854],{"class":121},"    if",[56,1856,118],{"class":62},[56,1858,855],{"class":66},[56,1860,81],{"class":74},[56,1862,860],{"class":66},[56,1864,863],{"class":74},[56,1866,587],{"class":70},[56,1868,1869,1872,1874,1876,1878],{"class":58,"line":612},[56,1870,1871],{"class":62},"        value ",[56,1873,67],{"class":66},[56,1875,118],{"class":62},[56,1877,115],{"class":66},[56,1879,1880],{"class":74}," 10\n",[56,1882,1883,1886,1888,1890,1892,1895],{"class":58,"line":617},[56,1884,1885],{"class":62},"        results",[56,1887,307],{"class":70},[56,1889,598],{"class":144},[56,1891,141],{"class":70},[56,1893,1894],{"class":144},"value",[56,1896,148],{"class":70},[56,1898,1900],{"class":58,"line":1899},8,[56,1901,573],{"emptyLinePlaceholder":572},[56,1903,1905,1907,1909,1912],{"class":58,"line":1904},9,[56,1906,138],{"class":137},[56,1908,141],{"class":70},[56,1910,1911],{"class":144},"results",[56,1913,148],{"class":70},[14,1915,151],{},[47,1917,1919],{"className":49,"code":1918,"language":51,"meta":52,"style":52},"[20, 40]\n",[37,1920,1921],{"__ignoreMap":52},[56,1922,1923,1925,1928,1930,1933],{"class":58,"line":59},[56,1924,161],{"class":70},[56,1926,1927],{"class":74},"20",[56,1929,78],{"class":70},[56,1931,1932],{"class":74}," 40",[56,1934,99],{"class":70},[14,1936,1937,1938,1942],{},"You ",[1939,1940,1941],"em",{},"could"," write that in one line, but a normal loop may be easier to understand.",[14,1944,1945,1946,307],{},"For more practice-focused examples, see ",[303,1947,1949],{"href":1948},"\u002Fhow-to\u002Fhow-to-use-list-comprehensions-in-python\u002F","how to use list comprehensions in Python",[42,1951,1953],{"id":1952},"common-beginner-mistakes","Common beginner mistakes",[14,1955,1956],{},"Here are some common problems beginners run into.",[523,1958,1960],{"id":1959},"forgetting-the-brackets","Forgetting the brackets",[14,1962,1963],{},"A list comprehension must use square brackets.",[14,1965,1966],{},"Incorrect:",[47,1968,1970],{"className":49,"code":1969,"language":51,"meta":52,"style":52},"n * n for n in [1, 2, 3]\n",[37,1971,1972],{"__ignoreMap":52},[56,1973,1974,1976,1978,1980,1982,1984,1986,1988,1990,1992,1994,1996,1998],{"class":58,"line":59},[56,1975,112],{"class":62},[56,1977,115],{"class":66},[56,1979,118],{"class":62},[56,1981,39],{"class":121},[56,1983,118],{"class":62},[56,1985,126],{"class":121},[56,1987,71],{"class":70},[56,1989,75],{"class":74},[56,1991,78],{"class":70},[56,1993,81],{"class":74},[56,1995,78],{"class":70},[56,1997,86],{"class":74},[56,1999,99],{"class":70},[14,2001,2002],{},"Correct:",[47,2004,2006],{"className":49,"code":2005,"language":51,"meta":52,"style":52},"[n * n for n in [1, 2, 3]]\n",[37,2007,2008],{"__ignoreMap":52},[56,2009,2010,2012,2014,2016,2018,2020,2022,2024,2026,2028,2030,2032,2034,2036],{"class":58,"line":59},[56,2011,161],{"class":70},[56,2013,112],{"class":62},[56,2015,115],{"class":66},[56,2017,118],{"class":62},[56,2019,39],{"class":121},[56,2021,118],{"class":62},[56,2023,126],{"class":121},[56,2025,71],{"class":70},[56,2027,75],{"class":74},[56,2029,78],{"class":70},[56,2031,81],{"class":74},[56,2033,78],{"class":70},[56,2035,86],{"class":74},[56,2037,2038],{"class":70},"]]\n",[523,2040,2042],{"id":2041},"putting-parts-in-the-wrong-order","Putting parts in the wrong order",[14,2044,2045],{},"The order is:",[21,2047,2048,2050,2054],{},[24,2049,348],{},[24,2051,2052],{},[37,2053,39],{},[24,2055,2056,2057],{},"optional ",[37,2058,792],{},[14,2060,2002],{},[47,2062,2064],{"className":49,"code":2063,"language":51,"meta":52,"style":52},"[n * 2 for n in [1, 2, 3] if n > 1]\n",[37,2065,2066],{"__ignoreMap":52},[56,2067,2068,2070,2072,2074,2076,2078,2080,2082,2084,2086,2088,2090,2092,2094,2097,2099,2101,2103,2105],{"class":58,"line":59},[56,2069,161],{"class":70},[56,2071,112],{"class":62},[56,2073,115],{"class":66},[56,2075,81],{"class":74},[56,2077,254],{"class":121},[56,2079,118],{"class":62},[56,2081,126],{"class":121},[56,2083,71],{"class":70},[56,2085,75],{"class":74},[56,2087,78],{"class":70},[56,2089,81],{"class":74},[56,2091,78],{"class":70},[56,2093,86],{"class":74},[56,2095,2096],{"class":70},"]",[56,2098,1559],{"class":121},[56,2100,118],{"class":62},[56,2102,1122],{"class":66},[56,2104,433],{"class":74},[56,2106,99],{"class":70},[14,2108,1966],{},[47,2110,2112],{"className":49,"code":2111,"language":51,"meta":52,"style":52},"[for n in [1, 2, 3] n * 2]\n",[37,2113,2114],{"__ignoreMap":52},[56,2115,2116,2118,2120,2122,2124,2126,2128,2130,2132,2134,2136,2138,2140,2142,2144],{"class":58,"line":59},[56,2117,161],{"class":70},[56,2119,39],{"class":121},[56,2121,118],{"class":62},[56,2123,126],{"class":121},[56,2125,71],{"class":70},[56,2127,75],{"class":74},[56,2129,78],{"class":70},[56,2131,81],{"class":74},[56,2133,78],{"class":70},[56,2135,86],{"class":74},[56,2137,2096],{"class":70},[56,2139,118],{"class":62},[56,2141,115],{"class":66},[56,2143,81],{"class":74},[56,2145,99],{"class":70},[523,2147,2149,2150,2153],{"id":2148},"using-print-inside-the-comprehension","Using ",[37,2151,2152],{},"print()"," inside the comprehension",[14,2155,2156],{},"If you want to build a list, the expression should return values to store.",[14,2158,2159],{},"This is usually not useful:",[47,2161,2163],{"className":49,"code":2162,"language":51,"meta":52,"style":52},"numbers = [1, 2, 3]\nresult = [print(n) for n in numbers]\nprint(result)\n",[37,2164,2165,2185,2211],{"__ignoreMap":52},[56,2166,2167,2169,2171,2173,2175,2177,2179,2181,2183],{"class":58,"line":59},[56,2168,63],{"class":62},[56,2170,67],{"class":66},[56,2172,71],{"class":70},[56,2174,75],{"class":74},[56,2176,78],{"class":70},[56,2178,81],{"class":74},[56,2180,78],{"class":70},[56,2182,86],{"class":74},[56,2184,99],{"class":70},[56,2186,2187,2189,2191,2193,2195,2197,2199,2201,2203,2205,2207,2209],{"class":58,"line":102},[56,2188,421],{"class":62},[56,2190,67],{"class":66},[56,2192,71],{"class":70},[56,2194,138],{"class":137},[56,2196,141],{"class":70},[56,2198,497],{"class":144},[56,2200,1556],{"class":70},[56,2202,254],{"class":121},[56,2204,118],{"class":62},[56,2206,126],{"class":121},[56,2208,129],{"class":62},[56,2210,99],{"class":70},[56,2212,2213,2215,2217,2219],{"class":58,"line":134},[56,2214,138],{"class":137},[56,2216,141],{"class":70},[56,2218,452],{"class":144},[56,2220,148],{"class":70},[14,2222,151],{},[47,2224,2226],{"className":49,"code":2225,"language":51,"meta":52,"style":52},"1\n2\n3\n[None, None, None]\n",[37,2227,2228,2233,2238,2243],{"__ignoreMap":52},[56,2229,2230],{"class":58,"line":59},[56,2231,2232],{"class":74},"1\n",[56,2234,2235],{"class":58,"line":102},[56,2236,2237],{"class":74},"2\n",[56,2239,2240],{"class":58,"line":134},[56,2241,2242],{"class":74},"3\n",[56,2244,2245,2247,2251,2253,2256,2258,2260],{"class":58,"line":576},[56,2246,161],{"class":70},[56,2248,2250],{"class":2249},"s39Yj","None",[56,2252,78],{"class":70},[56,2254,2255],{"class":2249}," None",[56,2257,78],{"class":70},[56,2259,2255],{"class":2249},[56,2261,99],{"class":70},[14,2263,2264,2266,2267,2269,2270,2272],{},[37,2265,2152],{}," prints to the screen, but it returns ",[37,2268,2250],{},". So the list fills with ",[37,2271,2250],{}," values.",[523,2274,2276],{"id":2275},"writing-code-that-is-too-complex-for-one-line","Writing code that is too complex for one line",[14,2278,2279],{},"If you need to stop and decode the line slowly, a normal loop is probably better.",[14,2281,2282],{},"This is one reason beginners confuse list comprehensions with normal loops. The syntax is similar, but the order is different:",[21,2284,2285,2290],{},[24,2286,2287,2288],{},"normal loop: start with ",[37,2289,39],{},[24,2291,2292],{},"list comprehension: start with the expression",[42,2294,2296],{"id":2295},"faq","FAQ",[523,2298,2300],{"id":2299},"what-is-a-list-comprehension-in-python","What is a list comprehension in Python?",[14,2302,2303],{},"It is a short way to create a new list from another iterable, with optional filtering.",[523,2305,2307],{"id":2306},"are-list-comprehensions-faster-than-for-loops","Are list comprehensions faster than for loops?",[14,2309,2310],{},"They are often concise and can be efficient, but beginners should focus first on readability.",[523,2312,2314],{"id":2313},"can-i-use-if-in-a-list-comprehension","Can I use if in a list comprehension?",[14,2316,2317],{},"Yes. You can filter items with:",[47,2319,2321],{"className":49,"code":2320,"language":51,"meta":52,"style":52},"[value for item in iterable if condition]\n",[37,2322,2323],{"__ignoreMap":52},[56,2324,2325,2327,2330,2332,2334,2336,2338,2340,2342],{"class":58,"line":59},[56,2326,161],{"class":70},[56,2328,2329],{"class":62},"value ",[56,2331,39],{"class":121},[56,2333,331],{"class":62},[56,2335,126],{"class":121},[56,2337,789],{"class":62},[56,2339,792],{"class":121},[56,2341,795],{"class":62},[56,2343,99],{"class":70},[523,2345,2347],{"id":2346},"should-beginners-use-list-comprehensions","Should beginners use list comprehensions?",[14,2349,2350,2351,2353],{},"Yes, for simple cases. If the line becomes hard to read, use a normal ",[37,2352,39],{}," loop instead.",[42,2355,2357],{"id":2356},"see-also","See also",[21,2359,2360,2364,2368,2373,2378,2382],{},[24,2361,2362],{},[303,2363,306],{"href":305},[24,2365,2366],{},[303,2367,759],{"href":758},[24,2369,2370],{},[303,2371,2372],{"href":1163},"How to filter a list in Python",[24,2374,2375],{},[303,2376,2377],{"href":1948},"How to use list comprehensions in Python",[24,2379,2380],{},[303,2381,514],{"href":513},[24,2383,2384],{},[303,2385,2300],{"href":2386},"\u002Fglossary\u002Fwhat-is-a-list-comprehension-in-python\u002F",[2388,2389,2390],"style",{},"html pre.shiki code .su5hD, html code.shiki .su5hD{--shiki-light:#90A4AE;--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .smGrS, html code.shiki .smGrS{--shiki-light:#39ADB5;--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sP7_E, html code.shiki .sP7_E{--shiki-light:#39ADB5;--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .srdBf, html code.shiki .srdBf{--shiki-light:#F76D47;--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sVHd0, html code.shiki .sVHd0{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#D73A49;--shiki-default-font-style:inherit;--shiki-dark:#F97583;--shiki-dark-font-style:inherit}html pre.shiki code .sptTA, html code.shiki .sptTA{--shiki-light:#6182B8;--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .slqww, html code.shiki .slqww{--shiki-light:#6182B8;--shiki-default:#24292E;--shiki-dark:#E1E4E8}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sjJ54, html code.shiki .sjJ54{--shiki-light:#39ADB5;--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .s_sjI, html code.shiki .s_sjI{--shiki-light:#91B859;--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .s39Yj, html code.shiki .s39Yj{--shiki-light:#39ADB5;--shiki-default:#005CC5;--shiki-dark:#79B8FF}",{"title":52,"searchDepth":102,"depth":102,"links":2392},[2393,2394,2395,2396,2401,2406,2411,2412,2416,2423,2429],{"id":44,"depth":102,"text":45},{"id":190,"depth":102,"text":191},{"id":310,"depth":102,"text":311},{"id":517,"depth":102,"text":518,"children":2397},[2398,2400],{"id":525,"depth":134,"text":2399},"Normal for loop",{"id":655,"depth":134,"text":656},{"id":762,"depth":102,"text":763,"children":2402},[2403,2404,2405],{"id":806,"depth":134,"text":807},{"id":912,"depth":134,"text":913},{"id":1051,"depth":134,"text":1052},{"id":1167,"depth":102,"text":1168,"children":2407},[2408,2409,2410],{"id":1177,"depth":134,"text":1178},{"id":1270,"depth":134,"text":1271},{"id":1393,"depth":134,"text":1394},{"id":1487,"depth":102,"text":1488},{"id":1638,"depth":102,"text":1639,"children":2413},[2414,2415],{"id":1679,"depth":134,"text":1680},{"id":1790,"depth":134,"text":1791},{"id":1952,"depth":102,"text":1953,"children":2417},[2418,2419,2420,2422],{"id":1959,"depth":134,"text":1960},{"id":2041,"depth":134,"text":2042},{"id":2148,"depth":134,"text":2421},"Using print() inside the comprehension",{"id":2275,"depth":134,"text":2276},{"id":2295,"depth":102,"text":2296,"children":2424},[2425,2426,2427,2428],{"id":2299,"depth":134,"text":2300},{"id":2306,"depth":134,"text":2307},{"id":2313,"depth":134,"text":2314},{"id":2346,"depth":134,"text":2347},{"id":2356,"depth":102,"text":2357},"Master list comprehensions in python explained in our comprehensive Python beginner guide.","md",{},"\u002Flearn\u002Flist-comprehensions-in-python-explained",{"title":5,"description":2430},"learn\u002Flist-comprehensions-in-python-explained","zDbzJS7-V1gKMStPdp1NhPKIbK6pPumkN78pA7KeVBs",1777585498915]