لدى قائمة من أطوال المتغيرات وأحتاج إلى معرفة ما إذا كان العنصر الحالي هو الأطول بين بقية عناصر القائمة كما في المثال التالي: mylist = ['123','123456','1234']
for each in mylist:
if condition1:
do_something()
elif ___________________: #else if each is the longest string contained in mylist:
do_something_else()
لنفترض أن لدي القائمتين التاليتين: X = ["a", "b", "c", "d", "e", "f", "g", "h", "i"]
Y = [ 0, 1, 1, 0, 1, 2, 2, 0, 1]
أريد أن أفرز X بالاعتماد على قيم من Y أي أن القائمة النهاية ستكون كالتالي: ["a", "d", "h", "b", "c", "e", "i", "f", "g"]
فما هي أقصر طريقة لفعل ذلك في بايثون؟
أريد طباعة الأخطاء على شاشة فهل هنالك طريقة معينة لطباعة الأخطاء في لغة بايثون، فمثلا أريد طباعة الخطأ الذي يظهر هنا: try:
something here
except:
print 'the whatever error occurred.'
هل هنالك طريقة لإعادة تسمية مفتاح قاموس من دون إعادة تعيين قيمته إلى اسم جديد وحذف المفتاح القديم؟ أرجو أن يكون الحل بدون الاضطرار إلى التكرار في القاموس.
لدي قائمة تحتوي على سلاسل نصية وأريد كتابة شيفرة برمجية بها شرط التأكد من من وجود إحدى هذه السلاسل نصية في سلسلة نصية، فكيف أستطيع فعل ذلك؟ مثال للقائمة والسلسلة النصية: a = ['a', 'b', 'c']
str = "a123"
يبدو أن بايثون تدعم طرق مختلفة لإيقاف والخروج من سكربت، ومن أبرز الطرق التي وجدتها دوال quit() وexit() وsys.exit() فما الفرق بينهم؟ وهل توجد طرق أخرى للخروج؟
أملك الدالة التالية وهي كما تبدو تحتوي على سلسلة نصية طويلة فهل هنالك طريقة لتقسيم هذه السلسلة النصية على أجزاء ومن دون فقدان الدالة المرتبطة معها؟ >>> def fun():
print '{0} Here is a really long sentence with {1}'.format(3, 5)
هل هنالك طريقة برمجية للحصول على الشيفرة البرمجية لدالة معينة في بايثون؟ أي أريد الحصول على الشيفرة البرمجية كما كُتبت من داخل البرنامج ومن دون النظر إلى ملفاته.
أريد وضع شرط للتحقق من قيمة متغير معينة ومن ثم تنفيذ أمر معين حسب نتيجة الشرط أي إذا كانت النتيجة صحيحة فسيتم تنفيذ أمر معين وإذا كانت خاطئة فسيتم تنفيذ أمر آخر.
أقوم بكتابة hash في روبي وأريد أن أكتبه في ملف json في شكله الصحيح، هذه هي الشيفرة البرمجية التي كتبتها لفعل ذلك: tempHash = {
"key_a" => "val_a",
"key_b" => "val_b"
}
fJson = File.open("public/temp.json","w")
fJson.write(tempHash)
fJson.close
وهذه هي محتويات ملف النتيجة: key_aval_akey_bval_b
فما هي الطريقة الصحيحة لفعل ذلك؟
أحتاج إلى الحصول على جميع طرق دمج السلاسل النصية في بايثون، فلو افترضنا المتغير التالي: Section = 'C_type'
فأحتاج إلى دمجه مع "Sec_” لتشكيل السلسلة النصية التالية: Sec_C_type
تدعم مكتبة math الكثير من الدوال المفيدة مثل floor فهذه الدالة تأخذ عدد حقيقي – أقصد عدد بفاصلة- ومن ثم تقوم بإرجاع أقرب عدد صحيح، لكن مشكلتي أن هذه الدالة تقوم بإرجاع الجواب كعدد حقيقي وليس كعدد صحيح فعلى سبيل المثال: import math
f=math.floor(2.3)
سترجع لي الدالة: 2.0
فما حل هذه المشكلة؟
أملك قائمة من القوائم كما في المثال التالي: [12, 'tall', 'blue', 1]
[15, 'tall', 'black', 3]
[13, 'tall', 'blue', 8]
[9, 'short', 'blue', 3]
[1, 'short', 'black', 2]
[2, 'short', 'red', 9]
[4, 'tall', 'blue', 13]
فإذا أردت فرزها اعتمادا على عنصر واحد، مثلا عنصر tall/short فأستطيع فعل ذلك عن طريق السطر التالي: s = sorted(s, key = itemgetter(1))
أريد أن أفرز العناصر حسب كل من الطول (tall/short) واللون، فكيف أستطيع فرز القائمة مرتين؟ مرة لكل عنصر بسرعة؟