דילוג לתוכן
  • חוקי הפורום
  • פופולרי
  • לא נפתר
  • משתמשים
  • חיפוש גוגל בפורום
  • צור קשר
עיצובים
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • ברירת מחדל (ללא עיצוב (ברירת מחדל))
  • ללא עיצוב (ברירת מחדל)
כיווץ
מתמחים טופ
  1. דף הבית
  2. קטגוריות בהרצה
  3. תכנות
  4. Python
  5. עזרה הדדית - Python
  6. בירור | אחרי שכתבתי סקריפט ואני רוצה לייצא את זה לקובץ רגיל איך עושים זאת

בירור | אחרי שכתבתי סקריפט ואני רוצה לייצא את זה לקובץ רגיל איך עושים זאת

מתוזמן נעוץ נעול הועבר נפתר עזרה הדדית - Python
24 פוסטים 6 כותבים 360 צפיות 7 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • ת תותחוביץ'

    @יצחק-בר אז איך עושים קובץ EXE שמספיק לשמור אותו לבד, בלי להחזיק אותו באותו תיקייה עם הקבצים, אלא שאפשר להעתיק אותו מהמחשב?

    י מנותק
    י מנותק
    יצחק בר
    כתב נערך לאחרונה על ידי יצחק בר
    #21

    @תותחוביץ לא יודע אני ממש מתחיל בתחום הזה אבל שאלתי את gpt וזה מה שהוא ענה לי

    5005860d-5c17-4e96-93a9-99ab2667d1a6-image.png
    עריכה ראיתי שמאוד קשה לקרוא את הצילום מסך אז הוספתי את זה
    ✅ הטמעה (embedding) של קבצים בתוך קובץ ה-EXE
    כשאתה יוצר קובץ exe בעזרת PyInstaller או כלי דומה – אפשר להכניס לתוכו גם תמונות, סאונדים ושאר קבצים כך שלא תצטרך להחזיק תיקיות נפרדות.

    🚀 איך עושים את זה עם PyInstaller:

    1. השתמש בפקודה הבאה ליצירת קובץ EXE:

    pyinstaller --onefile --add-data "images/logo.png;images" --add-data "sounds/click.wav;sounds" main.py
    הסבר:
    --onefile = יוצר קובץ exe יחיד.

    --add-data = מוסיף קבצים לקובץ ה־exe.

    הפורמט: "נתיב_לקובץ;נתיב_יעד_בתוך_EXE"

    אם אתה על Windows: השתמש ב-; (סימן נקודה-פסיק)

    אם אתה על Mac/Linux: השתמש ב-: (סימן נקודתיים)

    לדוגמה:

    --add-data "assets/bg.jpg;assets"
    --add-data "audio/music.mp3;audio"
    2. בתוך הקוד שלך – גש לקבצים עם sys._MEIPASS:

    import sys
    import os

    def resource_path(relative_path):
    try:
    base_path = sys._MEIPASS # כשמריצים EXE
    except AttributeError:
    base_path = os.path.abspath(".") # כשמריצים רגיל מ-Python
    return os.path.join(base_path, relative_path)
    🔊 ואז תשתמש בזה ככה:

    image_path = resource_path("images/logo.png")
    sound_path = resource_path("sounds/click.wav")
    🛠 טיפ נוסף:
    אם יש לך הרבה קבצים בתיקייה, אתה יכול להוסיף תיקייה שלמה:

    --add-data "images;images"
    --add-data "sounds;sounds"
    רוצה שאעזור לך לבנות את הפקודה המדויקת לקבצים שלך? תשלח לי:

    את שם הקובץ הראשי (main.py או אחר)

    אילו תיקיות של מדיה יש (תמונות, סאונד, וידאו וכו')

    ואני אחזיר לך בדיוק את הפקודה והקוד.

    תגובה 1 תגובה אחרונה
    1
    • יוסף אלחנןי יוסף אלחנן

      @אלישי כתב בבירור | אחרי שכתבתי סקריפט ואני רוצה לייצא את זה לקובץ רגיל איך עושים זאת:

      אפשרות נוספת יותר נפוצה ופופולארית:
      פתח את שורה הפקודה (CMD) בתיקייה שם מופיע הסקריפט שכתבת, ותקליד שם:

      pip install pyinstaller
      

      אחרי ההתקנה תקליד (תחליף את SCRIPT.py בשם של הסקריפט שלך):

      pyinstaller --onefile SCRIPT.py
      

      הקובץ שנוצר יהיה בתיקיית dist

      כדאי גם להוסיף את הדגל

      --noconsol
      

      אני אישית מקמפל את הקוד עם האפשרות השניה עם הקונסול, רואה שהכל עובד תקין ואין שום שגיאות ואז מקמפל שוב עם הדגל הנ"ל

      י מנותק
      י מנותק
      יצחק בר
      כתב נערך לאחרונה על ידי
      #22

      @יוסף-אלחנן מה זה מוסיף לי הקמפול השני?

      25802 יוסף אלחנןי 2 תגובות תגובה אחרונה
      0
      • י יצחק בר

        @יוסף-אלחנן מה זה מוסיף לי הקמפול השני?

        25802 מנותק
        25802 מנותק
        2580
        מדריכים
        כתב נערך לאחרונה על ידי
        #23

        @יצחק-בר ללא טרמינל ברקע

        תגובה 1 תגובה אחרונה
        1
        • י יצחק בר

          @יוסף-אלחנן מה זה מוסיף לי הקמפול השני?

          יוסף אלחנןי מחובר
          יוסף אלחנןי מחובר
          יוסף אלחנן
          מדריכים
          כתב נערך לאחרונה על ידי
          #24

          @יצחק-בר שהקונסול לא ייפתח יחד עם התוכנה.

          זה טוב בשביל לראות לוגים ושגיאות של התוכנה, אבל ברגע שזה עובד טוב אתה כבר לא צריך את זה

          תגובה 1 תגובה אחרונה
          1

          • התחברות

          • אין לך חשבון עדיין? הרשמה

          • התחברו או הירשמו כדי לחפש.
          • פוסט ראשון
            פוסט אחרון
          0
          • חוקי הפורום
          • פופולרי
          • לא נפתר
          • משתמשים
          • חיפוש גוגל בפורום
          • צור קשר