سؤال

أنا أستخدم CX_Freeze لتجميد برنامج Python الخاص بي. عند تشغيل CX_FREEZE ، يتم إنشاء مجموعة من ملفات PYD ، يتم وضع مجموعة كاملة من ملفات PYC في أرشيف اسمه.

هل يمكن لأحد أن يخبرني الفرق بين ملفات PYC وملفات PYD؟ ما سبب ملفات PYD ليس في المكتبة. هل من الممكن وضع ملفات PYD في الأرشيف أيضًا؟

شكرًا.

هل كانت مفيدة؟

المحلول

إخلاء المسئولية: لم أستخدم CX_FREEZE في لحظة ......

ملفات .pyd هي ملفات رمز الجهاز DLL تحتوي على وظائف محددة مطلوبة من Python.

ملفات .pyc هي ملفات .py التي تم تجميعها في Bytecode.

لذا فإن Pyds هي رمز الجهاز و Pycs هي رمز bytecode

الآن بالنسبة إلى سبب عدم وجود Pyds في .zip .... أتصور أن ذلك يرجع إلى أن المترجمات المترجم Python مطلوبة لتشغيل البرنامج. ما يفعله CX_FREEZE هو في الأساس:

  1. قم بتجميع جميع ملفات .py ورمي ملفات .pyc في الرمز البريدي
  2. ضع جميع ملفات .pyd في الرمز البريدي
  3. قم بإنشاء ملف .py وضعه في دليل الإخراج
  4. انسخ python.exe وأعد تسمية إلى myprogram.exe
  5. انسخ جميع ملفات .pyd اللازمة لفتح .zip وتشغيل المحتويات

لذا ، فأنت لا تقوم بالفعل بتجميع ملف Python الخاص بك ، بل يمكنك بدلاً من ذلك إعادة تسمية interpeter وتجميد جميع ملفات المصدر.

آمل أن يساعد هذا.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top