پرش به محتویات

اجرای Python و Notebook

Python برای تحلیل داده، محاسبات علمی، یادگیری ماشین، تولید نمودار و اجرای Notebookها استفاده می‌شود.

بررسی نسخه Python

python3 --version
which python3

اجرای یک فایل Python

python3 script.py

ساخت اسکریپت نمونه

cat > test.py <<'PYCODE'
import platform
import os

print("Python is working")
print("Host:", platform.node())
print("User:", os.getenv("USER"))
PYCODE

python3 test.py

ساخت محیط مجزا با venv

برای هر پروژه بهتر است یک محیط جدا بسازید:

mkdir -p ~/projects/python-demo
cd ~/projects/python-demo

python3 -m venv .venv
source .venv/bin/activate

python -m pip install --upgrade pip
نصب کتابخانه نمونه:

pip install numpy pandas matplotlib
خروج از محیط:

deactivate

اجرای Python با Slurm

cat > python-job.slurm <<'SLURM'
#!/bin/bash
#SBATCH --job-name=python-test
#SBATCH --partition=normal
#SBATCH --nodes=1
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=2
#SBATCH --mem=2G
#SBATCH --time=00:10:00
#SBATCH --output=python-%j.out
#SBATCH --error=python-%j.err

python3 test.py
SLURM

sbatch python-job.slurm

استفاده از venv داخل Job

cat > python-venv-job.slurm <<'SLURM'
#!/bin/bash
#SBATCH --job-name=python-venv
#SBATCH --partition=normal
#SBATCH --nodes=1
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=2
#SBATCH --mem=4G
#SBATCH --time=01:00:00
#SBATCH --output=python-venv-%j.out
#SBATCH --error=python-venv-%j.err

cd ~/projects/python-demo
source .venv/bin/activate
python test.py
SLURM

sbatch python-venv-job.slurm

خطاهای رایج Python

خطا علت احتمالی راهکار
ModuleNotFoundError کتابخانه نصب نیست نصب داخل venv یا تماس با پشتیبانی
Permission denied مسیر یا فایل دسترسی ندارد بررسی مالکیت و مسیر
No space left on device فضای مسیر پر شده حذف فایل‌های غیرضروری
Kernel کند است کد سنگین یا حافظه کم اجرای Job با Slurm

نکته مهم درباره نصب کتابخانه‌ها

بهتر است کتابخانه‌های Python را مستقیم و پراکنده نصب نکنید. برای هر پروژه یک محیط جداگانه بسازید تا نسخه کتابخانه‌ها با پروژه‌های دیگر تداخل نداشته باشد.

نمونه ساخت محیط جدا:

cd ~/projects/my-python-project
python3 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
pip install numpy pandas matplotlib

بعد از فعال‌سازی محیط، اجرای برنامه از همان محیط انجام می‌شود:

python script.py

در Jobهای Slurm هم باید همان محیط را فعال کنید:

source .venv/bin/activate
python script.py