1. ํ์ด์ฌ ์ค์น ํ์ธ
1. ์ฌ์ดํธ์์ ํ์ด์ฌ ๋ค์ด๋ก๋
Download Python
The official home of the Python Programming Language
www.python.org
2. ์ค์นํ ๋ "Add Python to PATH" ์ต์ ์ฒดํฌํ๊ธฐ
3. VS Code ํฐ๋ฏธ๋(๋๋ cmd ์ฐฝ)์์ ์๋ ๋ช ๋ น์ด ์คํ (์ค์น๋์ด ์๋ค๋ฉด+์๋ ํ๊ฒฝ๋ณ์๊น์ง ์ ์ ์ฉ๋๋ค๋ฉด ๋ฒ์ ์ด ๋์ด.)
python --version
4. ํ๊ฒฝ๋ณ์ ํธ์ง ์ง์
5. ์๋์ฐ cmd -> ์๋ ๋ช ๋ น์ด ์คํ -> ํ์ด์ ์ด ์ค์น๋ ๊ฒฝ๋ก ๋ณต์ฌ ํ ์ ํ๊ฒฝ๋ณ์์ ์ถ๊ฐํด์ค
where python
2. VS Code์์ ํ์ด์ฌ ์คํ ๋ฐฉ๋ฒ
- VS Code์์ ์ ํด๋ ์์ฑ (์: folder_name)
- ๊ทธ ์์ rename_files.py ํ์ผ ๋ง๋ค๊ธฐ
- ์๋ ์ฝ๋ ์์ฑ
- VS Code์์ ํฐ๋ฏธ๋ ์ด๊ธฐ (Ctrl + ~)
- python rename_files.py ์ ๋ ฅ ํ ์คํ
โ ๏ธ pyํ์ผ๊ณผ ํจ๊ป ์๋ ํด๋(name_change_pngs) ์ ์ด๋ฏธ์ง ์ด๋ฆ์ ๋ณ๊ฒฝํด์ค
- ์ฌ์ฌ์ฉ์ฑ ์ข์ ์ฝ๋
- ๋ค๋ฅธ PC์์๋ ํด๋ ๊ตฌ์กฐ๋ง ์ ์งํ๋ฉด ์คํ๋จ
- Python ํ์ผ์ด ์ด๋ ์๋ ์คํ ๊ฐ๋ฅํจ
#--------------- ๋ ์ง๊ฐ๊น์ด ์์ผ๋ก 1,2,3 ์ซ์์ด๋ฆ ์ถ๊ฐํ๋ ์ฝ๋
import os
from datetime import datetime
# ํ์ฌ ์คํ ์ค์ธ ํ์ผ(`.py`)์ด ์๋ ํด๋์ ๊ฒฝ๋ก
base_dir = os.path.dirname(os.path.abspath(__file__))
# ๋์ ํด๋ (์ด ํด๋ ์์ png ํ์ผ ์ด๋ฆ ๋ณ๊ฒฝ)
target_folder = os.path.join(base_dir, "name_change_pngs")
# ํด๋ ๋ด ๋ชจ๋ PNG ํ์ผ ์ฐพ๊ธฐ
file_info = []
# ํ์ผ๋ค์ ์์ ์๊ฐ์ ๊ฐ์ ธ์์ ๋ฆฌ์คํธ์ ์ ์ฅ
for filename in os.listdir(target_folder):
if filename.endswith(".png"):
old_path = os.path.join(target_folder, filename)
# ์ซ์ ์ ๋์ฌ ์ ๊ฑฐ (์ซ์์ ์ธ๋์ค์ฝ์ด(_)๋ ๋ชจ๋ ์ ๊ฑฐ)
new_filename = ''.join([char for char in filename if not char.isdigit() and char != '_'])
# ์ด๋ฆ ๋ณ๊ฒฝ ํ ํ์ผ์ด ์กด์ฌํ๋์ง ํ์ธ
if old_path != os.path.join(target_folder, new_filename):
new_path = os.path.join(target_folder, new_filename)
os.rename(old_path, new_path)
old_path = new_path # ์ด๋ฆ ๋ณ๊ฒฝ ํ ์๋ก์ด ๊ฒฝ๋ก๋ก ์
๋ฐ์ดํธ
# ์์ ์๊ฐ ๊ฐ์ ธ์ค๊ธฐ
modification_time = os.path.getmtime(old_path)
file_info.append((new_filename, modification_time, old_path))
# ์์ ์๊ฐ์ ๊ธฐ์ค์ผ๋ก ํ์ผ๋ค์ ์ ๋ ฌ (๊ฐ์ฅ ์ต๊ทผ ์์ ๋ ํ์ผ๋ถํฐ)
file_info.sort(key=lambda x: x[1], reverse=True)
# ํ์ผ ๋ฒํธ ๋งค๊ธฐ๊ธฐ
for index, (filename, _, old_path) in enumerate(file_info, start=1):
# ์ ๋ฒํธ ๋ถ์ฌ์ ํ์ผ ์ด๋ฆ ์ค์
new_filename = f"{index}_{filename}"
new_path = os.path.join(target_folder, new_filename)
# ์ด๋ฆ ๋ณ๊ฒฝ ํ ํ์ผ์ด ์กด์ฌํ๋์ง ํ์ธ
if os.path.exists(old_path):
os.rename(old_path, new_path)
print(f"๋ณ๊ฒฝ ์๋ฃ: {filename} → {new_filename}")
else:
print(f"ํ์ผ์ด ์กด์ฌํ์ง ์์: {old_path}")
3. ๊ฒฐ๊ณผ
์ง์ ํ ํด๋์ ์๋ .pngํ์ผ๋ค์ ์ด๋ฆ ์์ ์์ ๋ ์์ผ๋ก ๋๋ฒ๋ง์ด ๋ถ์(์ฌ์ง ์ญ์ ํ๊ณ ๋ค์ ์คํ์ํค๋ฉด ์ฌํ ๋น ๋จ)
- ์: photo.png→ 1_photo.png
+++ ํน์ ๊ธ์๋ง ์ถ๊ฐ/์ ๊ฑฐ ํ๊ณ ์ถ์์ ์ฝ๋
#--------------------------------------------- [์ถ๊ฐ๋ ๊ธ์] ์ถ๊ฐํ๋ ์ฝ๋
# import os
# # ํ์ฌ ์คํ ์ค์ธ ํ์ผ(`.py`)์ด ์๋ ํด๋์ ๊ฒฝ๋ก
# base_dir = os.path.dirname(os.path.abspath(__file__))
# # ๋์ ํด๋ (์ด ํด๋ ์์ png ํ์ผ ์ด๋ฆ ๋ณ๊ฒฝ)
# target_folder = os.path.join(base_dir, "name_change_pngs")
# # ํด๋ ๋ด ๋ชจ๋ PNG ํ์ผ ์ฐพ๊ธฐ``
# for filename in os.listdir(target_folder):
# if filename.endswith(".png"):
# old_path = os.path.join(target_folder, filename)
# new_path = os.path.join(target_folder, f"[์ถ๊ฐ๋ ๊ธ์]{filename}")
# os.rename(old_path, new_path)
# print(f"๋ณ๊ฒฝ ์๋ฃ: {filename} → [์ถ๊ฐ๋ ๊ธ์]{filename}")
#--------------------------------------------- [์ถ๊ฐ๋ ๊ธ์] ์์ ๋ ์ฝ๋
# import os
# # ํ์ฌ ์คํ ์ค์ธ ํ์ผ(`.py`)์ด ์๋ ํด๋์ ๊ฒฝ๋ก
# base_dir = os.path.dirname(os.path.abspath(__file__))
# # ๋์ ํด๋ (์ด ํด๋ ์์ png ํ์ผ ์ด๋ฆ ๋ณ๊ฒฝ)
# target_folder = os.path.join(base_dir, "name_change_pngs")
# # ํด๋ ๋ด ๋ชจ๋ PNG ํ์ผ ์ฐพ๊ธฐ
# if os.path.exists(target_folder): # ํด๋๊ฐ ์๋์ง ํ์ธ
# for filename in os.listdir(target_folder):
# if filename.startswith("[์ถ๊ฐ๋ ๊ธ์]") and filename.endswith(".png"):
# old_path = os.path.join(target_folder, filename)
# new_path = os.path.join(target_folder, filename.replace("[์ถ๊ฐ๋ ๊ธ์]", "", 1)) # "[์ถ๊ฐ๋ ๊ธ์]" ์ ๊ฑฐ
# os.rename(old_path, new_path)
# print(f"๋ณ๊ฒฝ ์๋ฃ: {filename} → {new_path}")
# else:
# print(f"ํด๋๋ฅผ ์ฐพ์ ์ ์์: {target_folder}")
'๐จ Dev.-Python' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
ํ์ด์ฌ ์คํํ์ผ .bat / .exe ๋ง๋ค๊ธฐ (batํ์ผ ํ๊ธ๊นจ์ง ํด๊ฒฐ๋ฐฉ๋ฒ / pngํ์ผ ๋๋ฒ๋ง exe ํ์ด์ฌ ์์ ๊ณต์ ) (0) | 2025.02.02 |
---|