• 0

كيف أنفذ عدة أسطر برمجية بلغة بايثون في سطر واحد في الطرفية؟

استخدم طريقة "python -c” لتنفيذ بعض التعليمات البرمجية بسطر واحد من خلال سطر الأوامر:

$ python -c "for r in range(10): print 'rob'"

السطر السابق يعمل بدون مشاكل لكن عندما أستدعي وحدة قبل حلقة التكرار أحصل على رسالة خطأ:

$ python -c "import sys; for r in range(10): print 'rob'"
  File "<string>", line 1
    import sys; for r in range(10): print 'rob'
              ^
SyntaxError: invalid syntax

فهل هنالك طريقة لحل هذه المشكلة؟

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

يمكنك حل مشكلة تعدد أسطر الشيفرة البرمجية بعدة أساليب في بايثون، فيمكنك على سبيل المثال استخدام echo -e قبل السطر البرمجي و| python
بعد السطر البرمجي ومن ثم تفصل الاستدعاء عن حلقة التكرار برمز \n كما في المثال التالي:

echo -e "import sys\nfor r in range(10): print 'rob'" | python

أو يمكنك استخدام exec ومن ثم تفصل الاستدعاء عن حلقة التكرار باستخدام رمز \\n كما في المثال التالي:

python -c "exec(\"import sys\\nfor r in range(10): print 'rob'\")"

كما يمكنك استخدام echo مرتين:

(echo "import sys" ; echo "for r in range(10): print 'rob'") | python

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن