کار با داده‌های اکسل در پایتون غالباً نیاز به استخراج ردیف‌ها و ستون‌های خاص به فرمت لیست دارد. تبدیل یک بازه اکسل به لیست پایتون برای کارهای مانند:

  • تحلیل داده‌ها با Pandas و NumPy
  • اتوماسیون گزارش‌دهی و فرآیندهای ETL
  • ادغام با مدل‌های یادگیری ماشین یا API‌ها

در این مقاله، ما مرحله به مرحله یاد خواهیم گرفت که چگونه یک محدوده تعریف شده در اکسل را به یک لیست در پایتون تبدیل کنیم.

کتابخانه تبدیل اکسل به لیست پایتون

به جای تجزیه فایل های Excel به صورت دستی، توسعه دهندگان می توانند از Aspose.Cells for Python از طریق .NET، یک کتابخانه قدرتمند تبدیل Excel به لیست استفاده کنند. این کتابخانه نه تنها استخراج رنج ها، سطرها و ستون ها به لیست های Python را آسان تر می کند بلکه از ویژگی های پیشرفته ای مانند فرمول ها، قالب بندی، نمودارها و جداول محوری پشتیبانی می کند و دقت را حتی در نقشه های پیچیده تضمین می کند.

قبل از کدنویسی، مطمئن شوید که تنظیمات شما آماده است:

  1. Python 3.7+ را نصب کنید.
  2. دانلود Aspose.Cells از انتشارها یا آن را با pip نصب کنید:
pip install aspose-cells-python
  1. یک فایل اکسل نمونه (sampledata.xlsx) با محتوای زیر آماده کنید:
تبدیل اکسل به لیست در پایتون: فایل داده نمونه

نمونه فایل داده اکسل.

تبدیل دامنه اکسل به لیست پایتون: راهنمای قدم به قدم

بیایید روند تبدیل یک دامنه از داده‌های اکسل به یک لیست پایتون را با استفاده از Aspose.Cells برای پایتون بررسی کنیم.

مراحل زیر را برای تبدیل یک بازه اکسل به یک لیست در پایتون دنبال کنید:

  1. نخست، فایل Excel موجود را با استفاده از کلاس Workbook بارگذاری کنید.
  2. دوم، اولین برگه را دریافت کنید.
  3. در مرحله بعد، یک محدوده ایجاد کنید، به عنوان مثال A1 تا C4.
  4. پس از آن، Range را به یک لیست پایتون تبدیل کنید.
  5. در نهایت، لیست را چاپ کنید.

اسکریپت پایتون زیر فایل اکسل را بارگذاری می‌کند، یک محدوده تعریف می‌کند و آن را به یک لیست پایتون تبدیل می‌کند.

from aspose.cells import Workbook

# مرحله 1: بارگذاری کاربرگ اکسل
book = cells.Workbook("sample_data.xlsx")

# مرحله 2: به اولین ورق دسترسی پیدا کنید
sheet1 = book.worksheets.get(0)

# مرحله ۳: محدوده را تعریف کنید (A1:C4 در این مثال)
sheet_cells = sheet1.cells
range_obj = sheet_cells.create_range("A1", "C4")

# مرحله ۴: تبدیل محدوده به یک لیست تو در تو در پایتون
range_list = []
for row_index in range(range_obj.first_row, range_obj.first_row + range_obj.row_count):
    row = []
   for column_index in range(range_obj.first_column, range_obj.first_column + range_obj.column_count):
        curr_cell = sheet_cells.check_cell(row_index, column_index)
        row.append(curr_cell.value if curr_cell else "")
    range_list.append(row)

# مرحله ۵: لیست پایتون را چاپ کنید
print("Python List Output:")
print(range_list)

Output

Python List Output:
[['City', 'Region', 'Store'], ['Chicago', 'Central', 3055], ['New York', 'East', 3036], ['Detroit', 'Central', 3074]]

این اسکریپت کامل نشان می‌دهد که چگونه داده‌ها را از اکسل استخراج کرده و آن را به یک لیست پایتون تبدیل کنید. پس از آن، بسته به نیازهای شما، می‌توان آن را به راحتی به Pandas یا JSON تبدیل کرد.

تبدیل لیست پایتون به DataFrame پاندا

با استفاده از پانداس، می‌توانید به‌طور مستقیم لیست را به یک DataFrame تبدیل کنید:

import pandas as pd

# Convert to a Pandas DataFrame
df = pd.DataFrame(range_list[1:], columns=range_list[0])
print(df)

خروجی DataFrame پانداس:

       City   Region  Store
0   Chicago  Central   3055
1  New York     East   3036
2   Detroit  Central   3074

ذخیره لیست پایتون به‌عنوان JSON

شما همچنین می‌توانید داده‌ها را به صورت JSON صادر کنید:

import json

# Convert to JSON
json_output = json.dumps(range_list)
print(json_output)

JSON Output:

[["City", "Region", "Store"], ["Chicago", "Central", 3055], ["New York", "East", 3036], ["Detroit", "Central", 3074]]

تبدیل ردیف اکسل به لیست در پایتون

گاهی اوقات ممکن است بخواهید تنها یک ردیف از اکسل را استخراج کنید و آن را به صورت یک لیست ذخیره کنید. در اینجا نحوه انجام آن با Aspose.Cells آمده است:

  1. کارbook Excel را بارگذاری کنید.
  2. به ورق کار هدف دسترسی پیدا کنید.
  3. ردیف را با اندیس انتخاب کنید.
  4. مقدارهای ردیف را به یک لیست پایتون جمع آوری کنید.
# کتابخانه Aspose.Cells را وارد کنید
from aspose.cells import Workbook

# مرحله ۱: کتابخانه Excel را از فایل بارگذاری کنید
book = Workbook("sample_data.xlsx")

# مرحله 2: به اولین ورق کاری در دفتر کار دسترسی پیدا کنید
sheet = book.worksheets.get(0)

# مرحله ۳: ایندکس ردیف را تعریف کنید (۰ = ردیف اول، که شامل سرصفحه‌ها است)
row_index = 0
cells = sheet.cells

# برای سطر انتخاب شده یک شیء دامنه ایجاد کنید
row_range = cells.create_range(row_index, 0, 1, sheet.cells.max_column + 1)

# مرحله ۴: ردیف را به یک لیست پایتون تبدیل کنید
row_list = []
for column_index in range(row_range.first_column, row_range.first_column + row_range.column_count):
    curr_cell = cells.check_cell(row_index, column_index)  # Get each cell in the row
    row_list.append(curr_cell.value if curr_cell else "")  # Append value or empty string if cell is blank

# ردیف استخراج شده را به صورت یک لیست چاپ کنید
print("Row to List:", row_list)

Output:

Row to List: ['City', 'Region', 'Store']

تبدیل ستون اکسل به لیست در پایتون

شما همچنین می‌توانید یک ستون را به یک لیست استخراج کنید. به عنوان مثال، بیایید ستون Region را به یک لیست تبدیل کنیم:

  1. کتاب کار و برگه کار را بارگذاری کنید.
  2. ستون را با اندیس انتخاب کنید.
  3. هر ردیف را در ستون پیمایش کنید.
  4. مقادیر ستون را در یک لیست جمع آوری کنید.
# کتابخانه Aspose.Cells را وارد کنید
from aspose.cells import Workbook

# مرحله 1: بارگذاری کتاب کار اکسل از فایل
book = Workbook("sample_data.xlsx")

# به کاربرگ اول در کتابکاربرگ دسترسی پیدا کنید
sheet = book.worksheets.get(0)

# مرحله 2: ایندکس ستون را تعریف کنید (0 = ستون اول، یعنی ستون A)
col_index = 0
cells = sheet.cells

# شیء محدوده‌ای برای ستون انتخاب شده ایجاد کن
# پارامترها: (startrow, startcolumn, totalrows, totalcolumns)
# اینجا، از ردیف ۰ شروع کن، colindex را انتخاب کن، همه ردیف‌ها را شامل شو، و عرض = ۱ ستون باشد
col_range = cells.create_range(0, col_index, sheet.cells.max_row + 1, 1)

# مرحله ۳ و ۴: تبدیل ستون به لیست پایتون
col_list = []
for row_index in range(col_range.first_row, col_range.first_row + col_range.row_count):
    curr_cell = cells.check_cell(row_index, col_index)  # Get each cell in the column
    if curr_cell:  # Only add if the cell exists (ignore empty rows)
        col_list.append(curr_cell.value)

# ستون استخراج شده را به صورت لیست چاپ کنید
print("Column to List:", col_list)

Output:

Column to List: ['City', 'Chicago', 'New York', 'Detroit']

مجوز رایگان دریافت کنید

Aspose.Cells for Python را از طریق .NET به صورت نامحدود ارزیابی کنید. درخواست یک مجوز موقت رایگان از license page کنید. آن را در کد خود اعمال کنید تا محدودیت‌های ارزیابی را حذف کنید. هر ویژگی را تست کنید، از جمله DF به Excel، نمودارها، فرمول‌ها و فایل‌های بزرگ.

اکسل به لیست: منابع رایگان

از منابع زیر استفاده کنید تا دانش خود را عمیق‌تر کنید، درک خود را تقویت کنید و بینش‌های عملی به دست آورید که می‌تواند به شما کمک کند آنچه را که یاد می‌گیرید به طور مؤثرتری به کار بگیرید.

نتیجه گیری

ما نشان دادیم که چگونه داده‌های Excel را به لیست‌های Python تبدیل کنیم با استخراج بازه‌ها، ردیف‌ها و ستون‌ها با استفاده از Aspose.Cells for Python از طریق .NET. هنگامی که داده‌ها به فرم لیست درآمدند، می‌توانند برای Pandas، JSON یا سایر وظایف پردازش استفاده شوند. در حالی که کتابخانه‌هایی مانند openpyxl یا pandas.readexcel می‌توانند بازه‌ها را استخراج کنند، Aspose.Cells کنترل بیشتری بر روی فرمول‌ها، فرمت‌بندی، نمودارها و سلول‌های ادغام شده ارائه می‌دهد و این آن را برای عملیات پیچیده Excel گزینه بهتری می‌سازد.

اگر به کمک نیاز دارید یا سوالی دارید، لطفاً در Aspose.Cells Free Support Forum با ما تماس بگیرید. تیم ما خوشحال می‌شود که به شما کمک کند.

ببینید همچنین