این سه تکنیک ساده می توانند به شما در کار با لیست های پیچیده کمک کنند.
یک لیست تودرتو ممکن است لیستی از لیست ها باشد یا شامل چندین نوع داده باشد. اگر یکی از چندین نوع داده کوچکتر ساخته اید، ممکن است بخواهید آن را صاف کنید تا موارد خواناتر و قابل دسترس تر شوند.
بیاموزید که چگونه یک لیست تودرتو را با سه رویکرد مختلف به یک لیست مستقیم تبدیل کنید.
نحوه صاف کردن لیست پایتون
بسته به پیچیدگی یک لیست تودرتو در پایتون چند راه وجود دارد. برای مثال، فهرستی که فقط شامل فهرستها باشد، آسانتر از فهرستی با انواع دادههای مختلط است.
نحوه مدیریت هر یک از آنها را در بخش های بعدی خواهید دید.
چگونه یک لیست تودرتو از لیست ها را با تابع Sum() مسطح کنیم
این روش فقط برای لیست های پایتون کاربرد دارد و شامل الحاق آیتم ها در چنین لیست تودرتو می شود. برای فهرستی از حلقهها، دیکشنریها، مجموعهها یا انواع دادههای مختلط اعمال نمیشود زیرا نمیتوانید این انواع را به هم متصل کنید.
در حالی که می توانید از حلقه for برای مسطح کردن لیست لیست ها استفاده کنید، تابع sum() ساده و خواناتر است زیرا یک خط پایتون است:
nestedList = [[1, 3, 4], [2, 4], [7, 9, 0]]
flatList = sum(nestedList, [])
print(flatList)
# Output: [1, 3, 4, 2, 4, 7, 9, 0]
نحوه استفاده از حلقه for برای مسطح کردن یک لیست تودرتوی مخلوط
شما می توانید از یک حلقه Python برای هر دو نوع داده مخلوط و همگن استفاده کنید. بنابراین چه یک لیست تودرتو فقط شامل لیست ها، تاپل ها، مجموعه ها، دیکشنری ها یا ترکیب آنها باشد، کار می کند:
nestedList = [[1, 3, 4], (1, 5, 6), {1, 2, 4}, {"e": 3, "o":9, "t":7}]
flatList = []
for i in nestedList:
for k in i:
flatList.append(k)
print(flatList)
# Output: [1, 3, 4, 1, 5, 6, 1, 2, 4, 'e', 'o', 't']
شما همچنین می توانید با درک لیست به این هدف برسید:
flatList = [k for i in nestedList for k in i]
print(flatList)
# Output: [1, 3, 4, 1, 5, 6, 1, 2, 4, 'e', 'o', 't']
لیست های پایتون را هر طور که دوست دارید دستکاری کنید
فهرست پایتون نحوه ارائه و دسترسی به داده ها را ساده می کند، زیرا دستکاری آن آسان است. در حالی که نحوه مسطح کردن یک لیست پایتون تودرتو را دیده اید، هنوز هم ترفندهای زیادی وجود دارد که می توانید بسته به هدف خود در لیست ها اعمال کنید. برای مثال، تبدیل لیست پایتون به دیکشنری یکی دیگر از کارهای رایجی است که پایتون آن را آسان می کند.