[{"data":1,"prerenderedAt":1916},["ShallowReactive",2],{"doc-\u002Fhow-to\u002Fhow-to-list-files-in-a-directory-in-python":3},{"id":4,"title":5,"body":6,"description":1909,"extension":1910,"meta":1911,"navigation":89,"path":1912,"seo":1913,"stem":1914,"__hash__":1915},"content\u002Fhow-to\u002Fhow-to-list-files-in-a-directory-in-python.md","How to List Files in a Directory in Python",{"type":7,"value":8,"toc":1869},"minimark",[9,13,17,34,37,51,56,181,184,188,198,204,210,213,221,228,283,288,328,331,353,364,372,376,379,382,401,520,527,532,547,553,567,570,602,605,615,621,627,634,717,721,747,753,759,838,841,926,948,955,959,962,965,979,986,1094,1097,1129,1134,1213,1216,1299,1310,1314,1317,1321,1324,1369,1376,1386,1394,1397,1445,1452,1456,1459,1462,1543,1546,1652,1656,1666,1669,1695,1701,1739,1743,1746,1755,1759,1763,1774,1778,1787,1791,1797,1801,1816,1820,1823,1827,1865],[10,11,5],"h1",{"id":12},"how-to-list-files-in-a-directory-in-python",[14,15,16],"p",{},"If you want to list files in a folder in Python, there are two common beginner-friendly options:",[18,19,20,28],"ul",{},[21,22,23,27],"li",{},[24,25,26],"code",{},"os.listdir()"," for a simple list of names",[21,29,30,33],{},[24,31,32],{},"pathlib"," for cleaner path handling",[14,35,36],{},"This page shows how to:",[18,38,39,42,45,48],{},[21,40,41],{},"List everything inside a directory",[21,43,44],{},"Show only files, not subdirectories",[21,46,47],{},"Print file names or full file paths",[21,49,50],{},"Use beginner-friendly methods first",[52,53,55],"h2",{"id":54},"quick-answer","Quick answer",[57,58,63],"pre",{"className":59,"code":60,"language":61,"meta":62,"style":62},"language-python shiki shiki-themes material-theme-lighter github-light github-dark","from pathlib import Path\n\nfolder = Path(\".\")\nfor item in folder.iterdir():\n    if item.is_file():\n        print(item.name)\n","python","",[24,64,65,84,91,122,145,161],{"__ignoreMap":62},[66,67,70,74,78,81],"span",{"class":68,"line":69},"line",1,[66,71,73],{"class":72},"sVHd0","from",[66,75,77],{"class":76},"su5hD"," pathlib ",[66,79,80],{"class":72},"import",[66,82,83],{"class":76}," Path\n",[66,85,87],{"class":68,"line":86},2,[66,88,90],{"emptyLinePlaceholder":89},true,"\n",[66,92,94,97,101,105,109,113,117,119],{"class":68,"line":93},3,[66,95,96],{"class":76},"folder ",[66,98,100],{"class":99},"smGrS","=",[66,102,104],{"class":103},"slqww"," Path",[66,106,108],{"class":107},"sP7_E","(",[66,110,112],{"class":111},"sjJ54","\"",[66,114,116],{"class":115},"s_sjI",".",[66,118,112],{"class":111},[66,120,121],{"class":107},")\n",[66,123,125,128,131,134,137,139,142],{"class":68,"line":124},4,[66,126,127],{"class":72},"for",[66,129,130],{"class":76}," item ",[66,132,133],{"class":72},"in",[66,135,136],{"class":76}," folder",[66,138,116],{"class":107},[66,140,141],{"class":103},"iterdir",[66,143,144],{"class":107},"():\n",[66,146,148,151,154,156,159],{"class":68,"line":147},5,[66,149,150],{"class":72},"    if",[66,152,153],{"class":76}," item",[66,155,116],{"class":107},[66,157,158],{"class":103},"is_file",[66,160,144],{"class":107},[66,162,164,168,170,173,175,179],{"class":68,"line":163},6,[66,165,167],{"class":166},"sptTA","        print",[66,169,108],{"class":107},[66,171,172],{"class":103},"item",[66,174,116],{"class":107},[66,176,178],{"class":177},"skxfh","name",[66,180,121],{"class":107},[14,182,183],{},"This prints file names in the current directory and skips subdirectories.",[52,185,187],{"id":186},"what-this-page-helps-you-do","What this page helps you do",[18,189,190,192,194,196],{},[21,191,41],{},[21,193,44],{},[21,195,47],{},[21,197,50],{},[52,199,201,202],{"id":200},"simplest-way-use-oslistdir","Simplest way: use ",[24,203,26],{},[14,205,206,207,209],{},"The ",[24,208,26],{}," function returns the names of items inside a folder.",[14,211,212],{},"That means the result can include:",[18,214,215,218],{},[21,216,217],{},"Files",[21,219,220],{},"Subdirectories",[14,222,223,224,227],{},"If you use ",[24,225,226],{},"\".\"",", Python looks at the current working directory.",[57,229,231],{"className":59,"code":230,"language":61,"meta":62,"style":62},"import os\n\nfor name in os.listdir(\".\"):\n    print(name)\n",[24,232,233,240,244,272],{"__ignoreMap":62},[66,234,235,237],{"class":68,"line":69},[66,236,80],{"class":72},[66,238,239],{"class":76}," os\n",[66,241,242],{"class":68,"line":86},[66,243,90],{"emptyLinePlaceholder":89},[66,245,246,248,251,253,256,258,261,263,265,267,269],{"class":68,"line":93},[66,247,127],{"class":72},[66,249,250],{"class":76}," name ",[66,252,133],{"class":72},[66,254,255],{"class":76}," os",[66,257,116],{"class":107},[66,259,260],{"class":103},"listdir",[66,262,108],{"class":107},[66,264,112],{"class":111},[66,266,116],{"class":115},[66,268,112],{"class":111},[66,270,271],{"class":107},"):\n",[66,273,274,277,279,281],{"class":68,"line":124},[66,275,276],{"class":166},"    print",[66,278,108],{"class":107},[66,280,178],{"class":103},[66,282,121],{"class":107},[284,285,287],"h3",{"id":286},"example-output","Example output",[57,289,291],{"className":59,"code":290,"language":61,"meta":62,"style":62},"notes.txt\nphoto.jpg\ndata\nscript.py\n",[24,292,293,303,313,318],{"__ignoreMap":62},[66,294,295,298,300],{"class":68,"line":69},[66,296,297],{"class":76},"notes",[66,299,116],{"class":107},[66,301,302],{"class":177},"txt\n",[66,304,305,308,310],{"class":68,"line":86},[66,306,307],{"class":76},"photo",[66,309,116],{"class":107},[66,311,312],{"class":177},"jpg\n",[66,314,315],{"class":68,"line":93},[66,316,317],{"class":76},"data\n",[66,319,320,323,325],{"class":68,"line":124},[66,321,322],{"class":76},"script",[66,324,116],{"class":107},[66,326,327],{"class":177},"py\n",[14,329,330],{},"Here:",[18,332,333,347],{},[21,334,335,338,339,342,343,346],{},[24,336,337],{},"notes.txt",", ",[24,340,341],{},"photo.jpg",", and ",[24,344,345],{},"script.py"," are files",[21,348,349,352],{},[24,350,351],{},"data"," might be a folder",[14,354,355,356,358,359,363],{},"So ",[24,357,26],{}," is useful when you want to see everything in a directory, but it does ",[360,361,362],"strong",{},"not"," automatically separate files from folders.",[14,365,366,367,116],{},"If you want to understand this function in more detail, see ",[368,369,371],"a",{"href":370},"\u002Fstandard-library\u002Fos.listdir-function-explained","os.listdir() explained",[52,373,375],{"id":374},"how-to-list-only-files","How to list only files",[14,377,378],{},"If you only want files, you need to check each item.",[14,380,381],{},"A common way is to use:",[18,383,384,389,395],{},[21,385,386,388],{},[24,387,26],{}," to get names",[21,390,391,394],{},[24,392,393],{},"os.path.join()"," to build the full path",[21,396,397,400],{},[24,398,399],{},"os.path.isfile()"," to test whether the item is a file",[57,402,404],{"className":59,"code":403,"language":61,"meta":62,"style":62},"import os\n\nfolder = \".\"\n\nfor name in os.listdir(folder):\n    full_path = os.path.join(folder, name)\n    if os.path.isfile(full_path):\n        print(name)\n",[24,405,406,412,416,430,434,455,486,509],{"__ignoreMap":62},[66,407,408,410],{"class":68,"line":69},[66,409,80],{"class":72},[66,411,239],{"class":76},[66,413,414],{"class":68,"line":86},[66,415,90],{"emptyLinePlaceholder":89},[66,417,418,420,422,425,427],{"class":68,"line":93},[66,419,96],{"class":76},[66,421,100],{"class":99},[66,423,424],{"class":111}," \"",[66,426,116],{"class":115},[66,428,429],{"class":111},"\"\n",[66,431,432],{"class":68,"line":124},[66,433,90],{"emptyLinePlaceholder":89},[66,435,436,438,440,442,444,446,448,450,453],{"class":68,"line":147},[66,437,127],{"class":72},[66,439,250],{"class":76},[66,441,133],{"class":72},[66,443,255],{"class":76},[66,445,116],{"class":107},[66,447,260],{"class":103},[66,449,108],{"class":107},[66,451,452],{"class":103},"folder",[66,454,271],{"class":107},[66,456,457,460,462,464,466,469,471,474,476,478,481,484],{"class":68,"line":163},[66,458,459],{"class":76},"    full_path ",[66,461,100],{"class":99},[66,463,255],{"class":76},[66,465,116],{"class":107},[66,467,468],{"class":177},"path",[66,470,116],{"class":107},[66,472,473],{"class":103},"join",[66,475,108],{"class":107},[66,477,452],{"class":103},[66,479,480],{"class":107},",",[66,482,483],{"class":103}," name",[66,485,121],{"class":107},[66,487,489,491,493,495,497,499,502,504,507],{"class":68,"line":488},7,[66,490,150],{"class":72},[66,492,255],{"class":76},[66,494,116],{"class":107},[66,496,468],{"class":177},[66,498,116],{"class":107},[66,500,501],{"class":103},"isfile",[66,503,108],{"class":107},[66,505,506],{"class":103},"full_path",[66,508,271],{"class":107},[66,510,512,514,516,518],{"class":68,"line":511},8,[66,513,167],{"class":166},[66,515,108],{"class":107},[66,517,178],{"class":103},[66,519,121],{"class":107},[284,521,523,524,526],{"id":522},"why-use-ospathjoin","Why use ",[24,525,393],{},"?",[14,528,529,531],{},[24,530,26],{}," gives you only the item name, such as:",[57,533,535],{"className":59,"code":534,"language":61,"meta":62,"style":62},"\"notes.txt\"\n",[24,536,537],{"__ignoreMap":62},[66,538,539,542,545],{"class":68,"line":69},[66,540,112],{"class":541},"s2W-s",[66,543,337],{"class":544},"sithA",[66,546,429],{"class":541},[14,548,549,550,552],{},"But ",[24,551,399],{}," usually needs the full path to check the correct item:",[57,554,556],{"className":59,"code":555,"language":61,"meta":62,"style":62},"\".\u002Fnotes.txt\"\n",[24,557,558],{"__ignoreMap":62},[66,559,560,562,565],{"class":68,"line":69},[66,561,112],{"class":541},[66,563,564],{"class":544},".\u002Fnotes.txt",[66,566,429],{"class":541},[14,568,569],{},"That is why this line matters:",[57,571,573],{"className":59,"code":572,"language":61,"meta":62,"style":62},"full_path = os.path.join(folder, name)\n",[24,574,575],{"__ignoreMap":62},[66,576,577,580,582,584,586,588,590,592,594,596,598,600],{"class":68,"line":69},[66,578,579],{"class":76},"full_path ",[66,581,100],{"class":99},[66,583,255],{"class":76},[66,585,116],{"class":107},[66,587,468],{"class":177},[66,589,116],{"class":107},[66,591,473],{"class":103},[66,593,108],{"class":107},[66,595,452],{"class":103},[66,597,480],{"class":107},[66,599,483],{"class":103},[66,601,121],{"class":107},[14,603,604],{},"It combines the folder and file name safely.",[14,606,607,608,116],{},"If you are not familiar with this, see ",[368,609,611,612,614],{"href":610},"\u002Fstandard-library\u002Fos.path.join-function-explained","how ",[24,613,393],{}," works",[52,616,618,619],{"id":617},"beginner-friendly-modern-option-pathlib","Beginner-friendly modern option: ",[24,620,32],{},[14,622,623,624,626],{},"Many beginners find ",[24,625,32],{}," easier to read because it treats paths as objects.",[14,628,629,630,633],{},"You can create a ",[24,631,632],{},"Path"," object for a folder, loop through its contents, and check whether each item is a file.",[57,635,637],{"className":59,"code":636,"language":61,"meta":62,"style":62},"from pathlib import Path\n\nfolder = Path(\".\")\n\nfor item in folder.iterdir():\n    if item.is_file():\n        print(item.name)\n",[24,638,639,649,653,671,675,691,703],{"__ignoreMap":62},[66,640,641,643,645,647],{"class":68,"line":69},[66,642,73],{"class":72},[66,644,77],{"class":76},[66,646,80],{"class":72},[66,648,83],{"class":76},[66,650,651],{"class":68,"line":86},[66,652,90],{"emptyLinePlaceholder":89},[66,654,655,657,659,661,663,665,667,669],{"class":68,"line":93},[66,656,96],{"class":76},[66,658,100],{"class":99},[66,660,104],{"class":103},[66,662,108],{"class":107},[66,664,112],{"class":111},[66,666,116],{"class":115},[66,668,112],{"class":111},[66,670,121],{"class":107},[66,672,673],{"class":68,"line":124},[66,674,90],{"emptyLinePlaceholder":89},[66,676,677,679,681,683,685,687,689],{"class":68,"line":147},[66,678,127],{"class":72},[66,680,130],{"class":76},[66,682,133],{"class":72},[66,684,136],{"class":76},[66,686,116],{"class":107},[66,688,141],{"class":103},[66,690,144],{"class":107},[66,692,693,695,697,699,701],{"class":68,"line":163},[66,694,150],{"class":72},[66,696,153],{"class":76},[66,698,116],{"class":107},[66,700,158],{"class":103},[66,702,144],{"class":107},[66,704,705,707,709,711,713,715],{"class":68,"line":488},[66,706,167],{"class":166},[66,708,108],{"class":107},[66,710,172],{"class":103},[66,712,116],{"class":107},[66,714,178],{"class":177},[66,716,121],{"class":107},[284,718,720],{"id":719},"what-this-does","What this does",[18,722,723,729,735,741],{},[21,724,725,728],{},[24,726,727],{},"Path(\".\")"," means the current directory",[21,730,731,734],{},[24,732,733],{},"folder.iterdir()"," loops through everything inside that directory",[21,736,737,740],{},[24,738,739],{},"item.is_file()"," keeps only files",[21,742,743,746],{},[24,744,745],{},"item.name"," prints just the file name",[284,748,750,751],{"id":749},"print-full-paths-with-pathlib","Print full paths with ",[24,752,32],{},[14,754,755,756,758],{},"If you want the path instead of just the name, print the ",[24,757,632],{}," object itself:",[57,760,762],{"className":59,"code":761,"language":61,"meta":62,"style":62},"from pathlib import Path\n\nfolder = Path(\".\")\n\nfor item in folder.iterdir():\n    if item.is_file():\n        print(item)\n",[24,763,764,774,778,796,800,816,828],{"__ignoreMap":62},[66,765,766,768,770,772],{"class":68,"line":69},[66,767,73],{"class":72},[66,769,77],{"class":76},[66,771,80],{"class":72},[66,773,83],{"class":76},[66,775,776],{"class":68,"line":86},[66,777,90],{"emptyLinePlaceholder":89},[66,779,780,782,784,786,788,790,792,794],{"class":68,"line":93},[66,781,96],{"class":76},[66,783,100],{"class":99},[66,785,104],{"class":103},[66,787,108],{"class":107},[66,789,112],{"class":111},[66,791,116],{"class":115},[66,793,112],{"class":111},[66,795,121],{"class":107},[66,797,798],{"class":68,"line":124},[66,799,90],{"emptyLinePlaceholder":89},[66,801,802,804,806,808,810,812,814],{"class":68,"line":147},[66,803,127],{"class":72},[66,805,130],{"class":76},[66,807,133],{"class":72},[66,809,136],{"class":76},[66,811,116],{"class":107},[66,813,141],{"class":103},[66,815,144],{"class":107},[66,817,818,820,822,824,826],{"class":68,"line":163},[66,819,150],{"class":72},[66,821,153],{"class":76},[66,823,116],{"class":107},[66,825,158],{"class":103},[66,827,144],{"class":107},[66,829,830,832,834,836],{"class":68,"line":488},[66,831,167],{"class":166},[66,833,108],{"class":107},[66,835,172],{"class":103},[66,837,121],{"class":107},[14,839,840],{},"You can also print the absolute path:",[57,842,844],{"className":59,"code":843,"language":61,"meta":62,"style":62},"from pathlib import Path\n\nfolder = Path(\".\")\n\nfor item in folder.iterdir():\n    if item.is_file():\n        print(item.resolve())\n",[24,845,846,856,860,878,882,898,910],{"__ignoreMap":62},[66,847,848,850,852,854],{"class":68,"line":69},[66,849,73],{"class":72},[66,851,77],{"class":76},[66,853,80],{"class":72},[66,855,83],{"class":76},[66,857,858],{"class":68,"line":86},[66,859,90],{"emptyLinePlaceholder":89},[66,861,862,864,866,868,870,872,874,876],{"class":68,"line":93},[66,863,96],{"class":76},[66,865,100],{"class":99},[66,867,104],{"class":103},[66,869,108],{"class":107},[66,871,112],{"class":111},[66,873,116],{"class":115},[66,875,112],{"class":111},[66,877,121],{"class":107},[66,879,880],{"class":68,"line":124},[66,881,90],{"emptyLinePlaceholder":89},[66,883,884,886,888,890,892,894,896],{"class":68,"line":147},[66,885,127],{"class":72},[66,887,130],{"class":76},[66,889,133],{"class":72},[66,891,136],{"class":76},[66,893,116],{"class":107},[66,895,141],{"class":103},[66,897,144],{"class":107},[66,899,900,902,904,906,908],{"class":68,"line":163},[66,901,150],{"class":72},[66,903,153],{"class":76},[66,905,116],{"class":107},[66,907,158],{"class":103},[66,909,144],{"class":107},[66,911,912,914,916,918,920,923],{"class":68,"line":488},[66,913,167],{"class":166},[66,915,108],{"class":107},[66,917,172],{"class":103},[66,919,116],{"class":107},[66,921,922],{"class":103},"resolve",[66,924,925],{"class":107},"())\n",[18,927,928,933,942],{},[21,929,930,932],{},[24,931,745],{}," → file name only",[21,934,935,937,938,941],{},[24,936,172],{}," or ",[24,939,940],{},"str(item)"," → relative path",[21,943,944,947],{},[24,945,946],{},"item.resolve()"," → full absolute path",[14,949,950,951,116],{},"For a broader introduction, see ",[368,952,954],{"href":953},"\u002Flearn\u002Fworking-with-file-paths-in-python","working with file paths in Python",[52,956,958],{"id":957},"how-to-include-full-paths","How to include full paths",[14,960,961],{},"Sometimes you need the complete file path, not just the file name.",[14,963,964],{},"This is common before you:",[18,966,967,970,973,976],{},[21,968,969],{},"Open a file",[21,971,972],{},"Delete a file",[21,974,975],{},"Check whether a file exists",[21,977,978],{},"Pass the path to another function",[284,980,982,983],{"id":981},"full-paths-with-os","Full paths with ",[24,984,985],{},"os",[57,987,989],{"className":59,"code":988,"language":61,"meta":62,"style":62},"import os\n\nfolder = \"my_folder\"\n\nfor name in os.listdir(folder):\n    full_path = os.path.join(folder, name)\n    if os.path.isfile(full_path):\n        print(full_path)\n",[24,990,991,997,1001,1014,1018,1038,1064,1084],{"__ignoreMap":62},[66,992,993,995],{"class":68,"line":69},[66,994,80],{"class":72},[66,996,239],{"class":76},[66,998,999],{"class":68,"line":86},[66,1000,90],{"emptyLinePlaceholder":89},[66,1002,1003,1005,1007,1009,1012],{"class":68,"line":93},[66,1004,96],{"class":76},[66,1006,100],{"class":99},[66,1008,424],{"class":111},[66,1010,1011],{"class":115},"my_folder",[66,1013,429],{"class":111},[66,1015,1016],{"class":68,"line":124},[66,1017,90],{"emptyLinePlaceholder":89},[66,1019,1020,1022,1024,1026,1028,1030,1032,1034,1036],{"class":68,"line":147},[66,1021,127],{"class":72},[66,1023,250],{"class":76},[66,1025,133],{"class":72},[66,1027,255],{"class":76},[66,1029,116],{"class":107},[66,1031,260],{"class":103},[66,1033,108],{"class":107},[66,1035,452],{"class":103},[66,1037,271],{"class":107},[66,1039,1040,1042,1044,1046,1048,1050,1052,1054,1056,1058,1060,1062],{"class":68,"line":163},[66,1041,459],{"class":76},[66,1043,100],{"class":99},[66,1045,255],{"class":76},[66,1047,116],{"class":107},[66,1049,468],{"class":177},[66,1051,116],{"class":107},[66,1053,473],{"class":103},[66,1055,108],{"class":107},[66,1057,452],{"class":103},[66,1059,480],{"class":107},[66,1061,483],{"class":103},[66,1063,121],{"class":107},[66,1065,1066,1068,1070,1072,1074,1076,1078,1080,1082],{"class":68,"line":488},[66,1067,150],{"class":72},[66,1069,255],{"class":76},[66,1071,116],{"class":107},[66,1073,468],{"class":177},[66,1075,116],{"class":107},[66,1077,501],{"class":103},[66,1079,108],{"class":107},[66,1081,506],{"class":103},[66,1083,271],{"class":107},[66,1085,1086,1088,1090,1092],{"class":68,"line":511},[66,1087,167],{"class":166},[66,1089,108],{"class":107},[66,1091,506],{"class":103},[66,1093,121],{"class":107},[14,1095,1096],{},"This prints paths like:",[57,1098,1100],{"className":59,"code":1099,"language":61,"meta":62,"style":62},"my_folder\u002Freport.txt\nmy_folder\u002Fdata.csv\n",[24,1101,1102,1116],{"__ignoreMap":62},[66,1103,1104,1106,1109,1112,1114],{"class":68,"line":69},[66,1105,1011],{"class":76},[66,1107,1108],{"class":99},"\u002F",[66,1110,1111],{"class":76},"report",[66,1113,116],{"class":107},[66,1115,302],{"class":177},[66,1117,1118,1120,1122,1124,1126],{"class":68,"line":86},[66,1119,1011],{"class":76},[66,1121,1108],{"class":99},[66,1123,351],{"class":76},[66,1125,116],{"class":107},[66,1127,1128],{"class":177},"csv\n",[284,1130,982,1132],{"id":1131},"full-paths-with-pathlib",[24,1133,32],{},[57,1135,1137],{"className":59,"code":1136,"language":61,"meta":62,"style":62},"from pathlib import Path\n\nfolder = Path(\"my_folder\")\n\nfor item in folder.iterdir():\n    if item.is_file():\n        print(item)\n",[24,1138,1139,1149,1153,1171,1175,1191,1203],{"__ignoreMap":62},[66,1140,1141,1143,1145,1147],{"class":68,"line":69},[66,1142,73],{"class":72},[66,1144,77],{"class":76},[66,1146,80],{"class":72},[66,1148,83],{"class":76},[66,1150,1151],{"class":68,"line":86},[66,1152,90],{"emptyLinePlaceholder":89},[66,1154,1155,1157,1159,1161,1163,1165,1167,1169],{"class":68,"line":93},[66,1156,96],{"class":76},[66,1158,100],{"class":99},[66,1160,104],{"class":103},[66,1162,108],{"class":107},[66,1164,112],{"class":111},[66,1166,1011],{"class":115},[66,1168,112],{"class":111},[66,1170,121],{"class":107},[66,1172,1173],{"class":68,"line":124},[66,1174,90],{"emptyLinePlaceholder":89},[66,1176,1177,1179,1181,1183,1185,1187,1189],{"class":68,"line":147},[66,1178,127],{"class":72},[66,1180,130],{"class":76},[66,1182,133],{"class":72},[66,1184,136],{"class":76},[66,1186,116],{"class":107},[66,1188,141],{"class":103},[66,1190,144],{"class":107},[66,1192,1193,1195,1197,1199,1201],{"class":68,"line":163},[66,1194,150],{"class":72},[66,1196,153],{"class":76},[66,1198,116],{"class":107},[66,1200,158],{"class":103},[66,1202,144],{"class":107},[66,1204,1205,1207,1209,1211],{"class":68,"line":488},[66,1206,167],{"class":166},[66,1208,108],{"class":107},[66,1210,172],{"class":103},[66,1212,121],{"class":107},[14,1214,1215],{},"If you need the absolute path:",[57,1217,1219],{"className":59,"code":1218,"language":61,"meta":62,"style":62},"from pathlib import Path\n\nfolder = Path(\"my_folder\")\n\nfor item in folder.iterdir():\n    if item.is_file():\n        print(item.resolve())\n",[24,1220,1221,1231,1235,1253,1257,1273,1285],{"__ignoreMap":62},[66,1222,1223,1225,1227,1229],{"class":68,"line":69},[66,1224,73],{"class":72},[66,1226,77],{"class":76},[66,1228,80],{"class":72},[66,1230,83],{"class":76},[66,1232,1233],{"class":68,"line":86},[66,1234,90],{"emptyLinePlaceholder":89},[66,1236,1237,1239,1241,1243,1245,1247,1249,1251],{"class":68,"line":93},[66,1238,96],{"class":76},[66,1240,100],{"class":99},[66,1242,104],{"class":103},[66,1244,108],{"class":107},[66,1246,112],{"class":111},[66,1248,1011],{"class":115},[66,1250,112],{"class":111},[66,1252,121],{"class":107},[66,1254,1255],{"class":68,"line":124},[66,1256,90],{"emptyLinePlaceholder":89},[66,1258,1259,1261,1263,1265,1267,1269,1271],{"class":68,"line":147},[66,1260,127],{"class":72},[66,1262,130],{"class":76},[66,1264,133],{"class":72},[66,1266,136],{"class":76},[66,1268,116],{"class":107},[66,1270,141],{"class":103},[66,1272,144],{"class":107},[66,1274,1275,1277,1279,1281,1283],{"class":68,"line":163},[66,1276,150],{"class":72},[66,1278,153],{"class":76},[66,1280,116],{"class":107},[66,1282,158],{"class":103},[66,1284,144],{"class":107},[66,1286,1287,1289,1291,1293,1295,1297],{"class":68,"line":488},[66,1288,167],{"class":166},[66,1290,108],{"class":107},[66,1292,172],{"class":103},[66,1294,116],{"class":107},[66,1296,922],{"class":103},[66,1298,925],{"class":107},[14,1300,1301,1302,937,1306,116],{},"After listing files, you may want to ",[368,1303,1305],{"href":1304},"\u002Fhow-to\u002Fhow-to-check-if-a-file-exists-in-python\u002F","check whether a file exists in Python",[368,1307,1309],{"href":1308},"\u002Fhow-to\u002Fhow-to-read-a-file-in-python\u002F","read a file in Python",[52,1311,1313],{"id":1312},"common-problems-beginners-hit","Common problems beginners hit",[14,1315,1316],{},"A few common mistakes can make directory listing confusing.",[284,1318,1320],{"id":1319},"using-a-path-that-does-not-exist","Using a path that does not exist",[14,1322,1323],{},"If the folder name is wrong, Python cannot list its contents.",[57,1325,1327],{"className":59,"code":1326,"language":61,"meta":62,"style":62},"import os\n\nprint(os.path.exists(\"your_folder\"))\n",[24,1328,1329,1335,1339],{"__ignoreMap":62},[66,1330,1331,1333],{"class":68,"line":69},[66,1332,80],{"class":72},[66,1334,239],{"class":76},[66,1336,1337],{"class":68,"line":86},[66,1338,90],{"emptyLinePlaceholder":89},[66,1340,1341,1344,1346,1348,1350,1352,1354,1357,1359,1361,1364,1366],{"class":68,"line":93},[66,1342,1343],{"class":166},"print",[66,1345,108],{"class":107},[66,1347,985],{"class":103},[66,1349,116],{"class":107},[66,1351,468],{"class":177},[66,1353,116],{"class":107},[66,1355,1356],{"class":103},"exists",[66,1358,108],{"class":107},[66,1360,112],{"class":111},[66,1362,1363],{"class":115},"your_folder",[66,1365,112],{"class":111},[66,1367,1368],{"class":107},"))\n",[14,1370,1371,1372,1375],{},"If this prints ",[24,1373,1374],{},"False",", the path is wrong or Python is looking in a different location than you expected.",[14,1377,1378,1379,116],{},"If you get an error, see ",[368,1380,1382,1383],{"href":1381},"\u002Ferrors\u002Ffilenotfounderror-errno-2-no-such-file-or-directory-fix","how to fix ",[24,1384,1385],{},"FileNotFoundError: [Errno 2] No such file or directory",[284,1387,1389,1390,1393],{"id":1388},"forgetting-that-listdir-includes-directories-too","Forgetting that ",[24,1391,1392],{},"listdir()"," includes directories too",[14,1395,1396],{},"This code prints everything:",[57,1398,1399],{"className":59,"code":230,"language":61,"meta":62,"style":62},[24,1400,1401,1407,1411,1435],{"__ignoreMap":62},[66,1402,1403,1405],{"class":68,"line":69},[66,1404,80],{"class":72},[66,1406,239],{"class":76},[66,1408,1409],{"class":68,"line":86},[66,1410,90],{"emptyLinePlaceholder":89},[66,1412,1413,1415,1417,1419,1421,1423,1425,1427,1429,1431,1433],{"class":68,"line":93},[66,1414,127],{"class":72},[66,1416,250],{"class":76},[66,1418,133],{"class":72},[66,1420,255],{"class":76},[66,1422,116],{"class":107},[66,1424,260],{"class":103},[66,1426,108],{"class":107},[66,1428,112],{"class":111},[66,1430,116],{"class":115},[66,1432,112],{"class":111},[66,1434,271],{"class":107},[66,1436,1437,1439,1441,1443],{"class":68,"line":124},[66,1438,276],{"class":166},[66,1440,108],{"class":107},[66,1442,178],{"class":103},[66,1444,121],{"class":107},[14,1446,1447,1448,937,1450,116],{},"If you expected only files, you must filter with ",[24,1449,399],{},[24,1451,739],{},[284,1453,1455],{"id":1454},"using-only-the-file-name-when-a-full-path-is-required","Using only the file name when a full path is required",[14,1457,1458],{},"This often causes problems when the file is not in the current directory.",[14,1460,1461],{},"Wrong idea:",[57,1463,1465],{"className":59,"code":1464,"language":61,"meta":62,"style":62},"import os\n\nfolder = \"my_folder\"\n\nfor name in os.listdir(folder):\n    if os.path.isfile(name):\n        print(name)\n",[24,1466,1467,1473,1477,1489,1493,1513,1533],{"__ignoreMap":62},[66,1468,1469,1471],{"class":68,"line":69},[66,1470,80],{"class":72},[66,1472,239],{"class":76},[66,1474,1475],{"class":68,"line":86},[66,1476,90],{"emptyLinePlaceholder":89},[66,1478,1479,1481,1483,1485,1487],{"class":68,"line":93},[66,1480,96],{"class":76},[66,1482,100],{"class":99},[66,1484,424],{"class":111},[66,1486,1011],{"class":115},[66,1488,429],{"class":111},[66,1490,1491],{"class":68,"line":124},[66,1492,90],{"emptyLinePlaceholder":89},[66,1494,1495,1497,1499,1501,1503,1505,1507,1509,1511],{"class":68,"line":147},[66,1496,127],{"class":72},[66,1498,250],{"class":76},[66,1500,133],{"class":72},[66,1502,255],{"class":76},[66,1504,116],{"class":107},[66,1506,260],{"class":103},[66,1508,108],{"class":107},[66,1510,452],{"class":103},[66,1512,271],{"class":107},[66,1514,1515,1517,1519,1521,1523,1525,1527,1529,1531],{"class":68,"line":163},[66,1516,150],{"class":72},[66,1518,255],{"class":76},[66,1520,116],{"class":107},[66,1522,468],{"class":177},[66,1524,116],{"class":107},[66,1526,501],{"class":103},[66,1528,108],{"class":107},[66,1530,178],{"class":103},[66,1532,271],{"class":107},[66,1534,1535,1537,1539,1541],{"class":68,"line":488},[66,1536,167],{"class":166},[66,1538,108],{"class":107},[66,1540,178],{"class":103},[66,1542,121],{"class":107},[14,1544,1545],{},"Better:",[57,1547,1548],{"className":59,"code":988,"language":61,"meta":62,"style":62},[24,1549,1550,1556,1560,1572,1576,1596,1622,1642],{"__ignoreMap":62},[66,1551,1552,1554],{"class":68,"line":69},[66,1553,80],{"class":72},[66,1555,239],{"class":76},[66,1557,1558],{"class":68,"line":86},[66,1559,90],{"emptyLinePlaceholder":89},[66,1561,1562,1564,1566,1568,1570],{"class":68,"line":93},[66,1563,96],{"class":76},[66,1565,100],{"class":99},[66,1567,424],{"class":111},[66,1569,1011],{"class":115},[66,1571,429],{"class":111},[66,1573,1574],{"class":68,"line":124},[66,1575,90],{"emptyLinePlaceholder":89},[66,1577,1578,1580,1582,1584,1586,1588,1590,1592,1594],{"class":68,"line":147},[66,1579,127],{"class":72},[66,1581,250],{"class":76},[66,1583,133],{"class":72},[66,1585,255],{"class":76},[66,1587,116],{"class":107},[66,1589,260],{"class":103},[66,1591,108],{"class":107},[66,1593,452],{"class":103},[66,1595,271],{"class":107},[66,1597,1598,1600,1602,1604,1606,1608,1610,1612,1614,1616,1618,1620],{"class":68,"line":163},[66,1599,459],{"class":76},[66,1601,100],{"class":99},[66,1603,255],{"class":76},[66,1605,116],{"class":107},[66,1607,468],{"class":177},[66,1609,116],{"class":107},[66,1611,473],{"class":103},[66,1613,108],{"class":107},[66,1615,452],{"class":103},[66,1617,480],{"class":107},[66,1619,483],{"class":103},[66,1621,121],{"class":107},[66,1623,1624,1626,1628,1630,1632,1634,1636,1638,1640],{"class":68,"line":488},[66,1625,150],{"class":72},[66,1627,255],{"class":76},[66,1629,116],{"class":107},[66,1631,468],{"class":177},[66,1633,116],{"class":107},[66,1635,501],{"class":103},[66,1637,108],{"class":107},[66,1639,506],{"class":103},[66,1641,271],{"class":107},[66,1643,1644,1646,1648,1650],{"class":68,"line":511},[66,1645,167],{"class":166},[66,1647,108],{"class":107},[66,1649,506],{"class":103},[66,1651,121],{"class":107},[284,1653,1655],{"id":1654},"confusing-the-current-working-directory-with-the-script-location","Confusing the current working directory with the script location",[14,1657,1658,1659,1661,1662,1665],{},"When you use ",[24,1660,226],{},", Python uses the ",[360,1663,1664],{},"current working directory",", not always the folder where your script is saved.",[14,1667,1668],{},"This command helps you check where Python is looking:",[57,1670,1672],{"className":59,"code":1671,"language":61,"meta":62,"style":62},"import os\nprint(os.getcwd())\n",[24,1673,1674,1680],{"__ignoreMap":62},[66,1675,1676,1678],{"class":68,"line":69},[66,1677,80],{"class":72},[66,1679,239],{"class":76},[66,1681,1682,1684,1686,1688,1690,1693],{"class":68,"line":86},[66,1683,1343],{"class":166},[66,1685,108],{"class":107},[66,1687,985],{"class":103},[66,1689,116],{"class":107},[66,1691,1692],{"class":103},"getcwd",[66,1694,925],{"class":107},[14,1696,1697,1698,1700],{},"You can also check with ",[24,1699,32],{},":",[57,1702,1704],{"className":59,"code":1703,"language":61,"meta":62,"style":62},"from pathlib import Path\nprint(Path(\".\").resolve())\n",[24,1705,1706,1716],{"__ignoreMap":62},[66,1707,1708,1710,1712,1714],{"class":68,"line":69},[66,1709,73],{"class":72},[66,1711,77],{"class":76},[66,1713,80],{"class":72},[66,1715,83],{"class":76},[66,1717,1718,1720,1722,1724,1726,1728,1730,1732,1735,1737],{"class":68,"line":86},[66,1719,1343],{"class":166},[66,1721,108],{"class":107},[66,1723,632],{"class":103},[66,1725,108],{"class":107},[66,1727,112],{"class":111},[66,1729,116],{"class":115},[66,1731,112],{"class":111},[66,1733,1734],{"class":107},").",[66,1736,922],{"class":103},[66,1738,925],{"class":107},[284,1740,1742],{"id":1741},"permission-problems","Permission problems",[14,1744,1745],{},"Sometimes the folder exists, but Python is not allowed to read it. In that case, you may see a permission error.",[14,1747,1748,1749,116],{},"See ",[368,1750,1382,1752],{"href":1751},"\u002Ferrors\u002Fpermissionerror-errno-13-permission-denied-fix",[24,1753,1754],{},"PermissionError: [Errno 13] Permission denied",[52,1756,1758],{"id":1757},"faq","FAQ",[284,1760,1762],{"id":1761},"how-do-i-list-only-files-and-not-folders-in-python","How do I list only files and not folders in Python?",[14,1764,1765,1766,1768,1769,1771,1772,116],{},"Filter each item with ",[24,1767,399],{}," or use ",[24,1770,32],{}," and check ",[24,1773,739],{},[284,1775,1777],{"id":1776},"what-is-the-easiest-way-to-list-files-in-a-directory","What is the easiest way to list files in a directory?",[14,1779,1780,1781,1783,1784,1786],{},"For beginners, ",[24,1782,32],{}," is often the clearest option. ",[24,1785,26],{}," is also common and simple.",[284,1788,1790],{"id":1789},"why-does-my-code-show-folders-too","Why does my code show folders too?",[14,1792,1793,1794,1796],{},"Functions like ",[24,1795,26],{}," return all items in the directory, including subdirectories.",[284,1798,1800],{"id":1799},"how-do-i-get-full-file-paths-instead-of-names","How do I get full file paths instead of names?",[14,1802,1803,1804,1807,1808,1810,1811,1813,1814,116],{},"Use ",[24,1805,1806],{},"os.path.join(folder, name)"," with ",[24,1809,985],{},", or print the ",[24,1812,632],{}," object in ",[24,1815,32],{},[284,1817,1819],{"id":1818},"why-can-python-not-find-the-folder-i-gave-it","Why can Python not find the folder I gave it?",[14,1821,1822],{},"You may be using a relative path and your current working directory is different from what you expected.",[52,1824,1826],{"id":1825},"see-also","See also",[18,1828,1829,1835,1839,1844,1849,1854,1860],{},[21,1830,1831],{},[368,1832,1834],{"href":1833},"\u002Fstandard-library\u002Fpython-os-module-overview","Python os module overview",[21,1836,1837],{},[368,1838,371],{"href":370},[21,1840,1841],{},[368,1842,1843],{"href":610},"os.path.join() explained",[21,1845,1846],{},[368,1847,1848],{"href":1304},"How to check if a file exists in Python",[21,1850,1851],{},[368,1852,1853],{"href":1308},"How to read a file in Python",[21,1855,1856],{},[368,1857,1859],{"href":1858},"\u002Fhow-to\u002Fhow-to-create-a-directory-in-python\u002F","How to create a directory in Python",[21,1861,1862],{},[368,1863,1864],{"href":953},"Working with file paths in Python",[1866,1867,1868],"style",{},"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 .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 .slqww, html code.shiki .slqww{--shiki-light:#6182B8;--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sP7_E, html code.shiki .sP7_E{--shiki-light:#39ADB5;--shiki-default:#24292E;--shiki-dark:#E1E4E8}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 .sptTA, html code.shiki .sptTA{--shiki-light:#6182B8;--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .skxfh, html code.shiki .skxfh{--shiki-light:#E53935;--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 .s2W-s, html code.shiki .s2W-s{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#032F62;--shiki-default-font-style:inherit;--shiki-dark:#9ECBFF;--shiki-dark-font-style:inherit}html pre.shiki code .sithA, html code.shiki .sithA{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#032F62;--shiki-default-font-style:inherit;--shiki-dark:#9ECBFF;--shiki-dark-font-style:inherit}",{"title":62,"searchDepth":86,"depth":86,"links":1870},[1871,1872,1873,1877,1881,1887,1893,1901,1908],{"id":54,"depth":86,"text":55},{"id":186,"depth":86,"text":187},{"id":200,"depth":86,"text":1874,"children":1875},"Simplest way: use os.listdir()",[1876],{"id":286,"depth":93,"text":287},{"id":374,"depth":86,"text":375,"children":1878},[1879],{"id":522,"depth":93,"text":1880},"Why use os.path.join()?",{"id":617,"depth":86,"text":1882,"children":1883},"Beginner-friendly modern option: pathlib",[1884,1885],{"id":719,"depth":93,"text":720},{"id":749,"depth":93,"text":1886},"Print full paths with pathlib",{"id":957,"depth":86,"text":958,"children":1888},[1889,1891],{"id":981,"depth":93,"text":1890},"Full paths with os",{"id":1131,"depth":93,"text":1892},"Full paths with pathlib",{"id":1312,"depth":86,"text":1313,"children":1894},[1895,1896,1898,1899,1900],{"id":1319,"depth":93,"text":1320},{"id":1388,"depth":93,"text":1897},"Forgetting that listdir() includes directories too",{"id":1454,"depth":93,"text":1455},{"id":1654,"depth":93,"text":1655},{"id":1741,"depth":93,"text":1742},{"id":1757,"depth":86,"text":1758,"children":1902},[1903,1904,1905,1906,1907],{"id":1761,"depth":93,"text":1762},{"id":1776,"depth":93,"text":1777},{"id":1789,"depth":93,"text":1790},{"id":1799,"depth":93,"text":1800},{"id":1818,"depth":93,"text":1819},{"id":1825,"depth":86,"text":1826},"Master how to list files in a directory in python in our comprehensive Python beginner guide.","md",{},"\u002Fhow-to\u002Fhow-to-list-files-in-a-directory-in-python",{"title":5,"description":1909},"how-to\u002Fhow-to-list-files-in-a-directory-in-python","s1oih7sxhNHAQN4T3VA-UZEJ7Y_dwKbx0UE3EoLsWDk",1777585500707]