Guidelines

μ—‘μ…€ νŒŒμΌμ— 효율적으둜 데이터λ₯Ό μž…λ ₯ν•˜λŠ” 방법

이번 μˆ˜μ—…μ—μ„œλŠ” sheet.cell을 μ‚¬μš©ν•˜μ—¬ 데이터λ₯Ό μž…λ ₯ν•˜λŠ” 방법과, λ°˜λ³΅λ¬Έμ„ 톡해 데이터 μž…λ ₯을 μžλ™ν™”ν•˜λŠ” 방법을 μ•Œμ•„λ³΄κ² μŠ΅λ‹ˆλ‹€.


sheet.cell을 μ‚¬μš©ν•΄ 엑셀에 데이터 μž…λ ₯ν•˜κΈ°

μ—‘μ…€ νŒŒμΌμ— 데이터λ₯Ό μž…λ ₯ν•˜λŠ” κ°€μž₯ 기본적인 방법은 sheet.cell λ©”μ„œλ“œλ₯Ό μ‚¬μš©ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€.

이 λ©”μ„œλ“œλ₯Ό μ‚¬μš©ν•˜λ©΄ μ—‘μ…€ μ‹œνŠΈμ˜ νŠΉμ • 셀에 μ›ν•˜λŠ” 데이터λ₯Ό μž…λ ₯ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

sheet.cell둜 데이터 μž…λ ₯ν•˜κΈ°
from openpyxl import Workbook # μƒˆλ‘œμš΄ μ›Œν¬λΆ 생성 wb = Workbook() # ν™œμ„± μ‹œνŠΈ 선택 ws = wb.active # 1ν–‰ 1열에 데이터 μž…λ ₯ ws.cell(row=1, column=1, value="Hello, Excel") # 파일 μ €μž₯ wb.save("output_file.xlsx")

μœ„ μ½”λ“œμ—μ„œ row와 column은 각각 ν–‰(κ°€λ‘œμ€„)κ³Ό μ—΄(μ„Έλ‘œμ€„) 번호λ₯Ό λ‚˜νƒ€λ‚΄λ©°, valueλŠ” ν•΄λ‹Ή 셀에 μž…λ ₯ν•  데이터λ₯Ό μ˜λ―Έν•©λ‹ˆλ‹€.

ws.cell(row=1, column=1, value="Hello, Excel") μ½”λ“œλŠ” 1ν–‰ 1열에 "Hello, Excel"μ΄λΌλŠ” 데이터λ₯Ό μž…λ ₯ν•©λ‹ˆλ‹€.

rowλ₯Ό 2, column을 3으둜 λ³€κ²½ν•˜λ©΄ 2ν–‰ 3열에 데이터가 μž…λ ₯λ©λ‹ˆλ‹€.


λ°˜λ³΅λ¬Έμ„ μ‚¬μš©ν•΄ 데이터 μž…λ ₯ μžλ™ν™”ν•˜κΈ°

λ°˜λ³΅λ¬Έμ„ μ‚¬μš©ν•˜λ©΄ μ—¬λŸ¬ 행에 λ™μΌν•œ 데이터λ₯Ό μž…λ ₯ν•˜κ±°λ‚˜, νŠΉμ • νŒ¨ν„΄μ„ 가진 순차적인 데이터λ₯Ό μž…λ ₯ν•  λ•Œ 효율적으둜 μž‘μ—…ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

λ°˜λ³΅λ¬Έμ„ ν™œμš©ν•œ 데이터 μž…λ ₯
from openpyxl import Workbook # μƒˆλ‘œμš΄ μ›Œν¬λΆ 생성 wb = Workbook() # ν™œμ„± μ‹œνŠΈ 선택 ws = wb.active # 1ν–‰λΆ€ν„° 10ν–‰κΉŒμ§€ for i in range(1, 11): # 1열에 Number 1~10 μž…λ ₯ ws.cell(row=i, column=1, value="No. " + str(i)) # 3열에 Hello μž…λ ₯ ws.cell(row=i, column=3, value="Hello") # 파일 μ €μž₯ wb.save("output_file.xlsx")

μœ„ μ½”λ“œλŠ”

  • 1μ—΄μ˜ 1ν–‰ "No. 1"λΆ€ν„° 10ν–‰ "No. 10"κΉŒμ§€

  • 3열에 "Hello"

데이터λ₯Ό μž…λ ₯ν•©λ‹ˆλ‹€.


μ—‘μ…€ 파일의 열은 μ•ŒνŒŒλ²³ λŒ€λ¬Έμžλ‘œ 지정할 μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€.

예λ₯Ό λ“€μ–΄ μ—‘μ…€ μ‹œνŠΈμ˜ 1번째 열은 A, 2번째 열은 B, 3번째 열은 C둜 지정할 수 μžˆμŠ΅λ‹ˆλ‹€.

μ•ŒνŒŒλ²³ λŒ€λ¬Έμž 뒀에 ν–‰ 번호λ₯Ό μ§€μ •ν•˜λ©΄ νŠΉμ • 셀을 지정할 수 μžˆμŠ΅λ‹ˆλ‹€.

이λ₯Ό ν™œμš©ν•΄ μœ„ μ½”λ“œλ₯Ό μ•„λž˜μ™€ 같이 λ³€κ²½ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

μ•ŒνŒŒλ²³ λŒ€λ¬Έμžλ‘œ μ—΄ μ§€μ •ν•˜κΈ°
# 1ν–‰λΆ€ν„° 10ν–‰κΉŒμ§€ for i in range(1, 11): # A열에 Number 1~10 μž…λ ₯ ws['A' + str(i)] = "No. " + str(i) # C열에 Hello μž…λ ₯ ws['C' + str(i)] = "Hello"

λŒ€λ¬Έμžλ‘œ νŠΉμ • 열을 지정할 λ•ŒλŠ” ws(μ‹œνŠΈ) 객체에 λŒ€κ΄„ν˜Έλ₯Ό μ‚¬μš©ν•˜μ—¬ 열을 μ§€μ •ν•©λ‹ˆλ‹€.

λ³„λ„λ‘œ cell λ©”μ„œλ“œλ₯Ό μ‚¬μš©ν•˜μ§€ μ•Šμ•„λ„ λ©λ‹ˆλ‹€.


appendλ₯Ό ν™œμš©ν•œ 데이터 μž…λ ₯

append λ©”μ„œλ“œλ₯Ό μ‚¬μš©ν•˜λ©΄ 리슀트 및 νŠœν”Œ ν˜•νƒœμ˜ 데이터λ₯Ό ν•œ λ²ˆμ— μž…λ ₯ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

appendλ₯Ό ν™œμš©ν•œ 데이터 μž…λ ₯
from openpyxl import Workbook # μƒˆλ‘œμš΄ μ›Œν¬λΆ 생성 wb = Workbook() # ν™œμ„± μ‹œνŠΈ 선택 ws = wb.active data = [ ['Name', 'Age', 'City'], ['Alice', 30, 'New York'], ['Bob', 25, 'Los Angeles'], ['Charlie', 35, 'Chicago'], ] # λ°˜λ³΅λ¬Έμ„ μ‚¬μš©ν•˜μ—¬ 데이터 μž…λ ₯ for row in data: ws.append(row) # μ°Έκ³ : 2쀑 λ°˜λ³΅λ¬Έμ„ μ‚¬μš©ν•œ 데이터 μž…λ ₯ # for row in data: # for cell in row: # ws.cell(row=data.index(row) + 1, column=row.index(cell) + 1, value=cell) # 파일 μ €μž₯ wb.save("output_file.xlsx")

μœ„ μ½”λ“œλŠ” data 2쀑 λ¦¬μŠ€νŠΈμ— μžˆλŠ” 데이터λ₯Ό μ—‘μ…€ νŒŒμΌμ— ν•œ λ²ˆμ— μž…λ ₯ν•©λ‹ˆλ‹€.

Mission
0 / 1

λ‹€μŒ 쀑 리슀트 및 νŠœν”Œ ν˜•νƒœμ˜ 데이터λ₯Ό μžλ™μœΌλ‘œ μž…λ ₯ν•  λ•Œ μ‚¬μš©ν•˜λŠ” ν•¨μˆ˜λŠ” λ¬΄μ—‡μΌκΉŒμš”?

sheet.write
sheet.cell
sheet.append
sheet.iter_rows

Guidelines

AI Tutor

Publish

Design

Upload

Notes

Favorites

Help

Code Editor

Run
Generate

Execution Result

Result

The document is empty.

Try running the code.