تخطَّ إلى المحتوى

ابدأ من Python

ستجد في ميم أشياء مألوفة: الكتل بالمسافة البادئة بعد :، ولكل ... في، والقوائم والقواميس بترتيب الإدراج. والفروق الكبيرة: الأنواع ثابتة تُفحص قبل التشغيل، والبرنامج يُترجم إلى ملف تنفيذي، والأخطاء قيم لا استثناءات، والذاكرة يدوية.

في بايثون في ميم
if / elif / else اذا / غير ذلك اذا / غير ذلك
for x in range(1, 11): لكل س في مدى(1, 11):
while وbreak وcontinue طالما وتوقف وتجاوز
def f(x: int) -> int: داله ف(س عدد) عدد: (الأنواع إلزامية)
list وdict قائمة[نوع] (نوع واحد) وقاموس[مفتاح, قيمة]
class بحقول هيكل بحقول، والدوال تأخذه معاملاً (لا طرائق)
import math ثم math.sqrt استورد رياضيات ثم رياضيات.جذر
print(a, b) اطبع(ا, ب): بلا مسافة بين القيم؛ اكتبها أنت
try / except !نوع وجرّب ووالا
None لاشيء (للنص والمؤشر)

نوع المتغير ثابت من أول قيمة:

يسبب الخطأ
س = 1
س = "واحد"
المخرج المسجَّل في الكتاب المرجعيmeem برنامج.م · 0.10.0
​[خطأ دلالي E0408] سطر 2:1 - لا يمكن تعيين قيمة من النوع 'نص' للمتغير 'س' من النوع 'عدد'   2 | س = "واحد"     | ^  تلميح: النصوص لا تتحول إلى أعداد تلقائياً.

رمز الخروج: 2

في فهرس الأخطاء: E0408

/ بين عددين صحيحين قسمة صحيحة تقطع نحو الصفر (قريبة من // في بايثون، وتخالفها في الأعداد السالبة)، ومع كسر قسمة كسرية:

القسمة
الطول = 7
العرض = 3
اطبع("المساحة: ", الطول * العرض)
اطبع("المحيط: ", 2 * (الطول + العرض))
اطبع("7 / 2 = ", 7 / 2, " و7 / 2.0 = ", 7 / 2.0)
مخرجات مسجّلة من المجمّعmeem 02_حل.م · meem 0.10.0+b01b55f
المساحة: 21المحيط: 207 / 2 = 3 و7 / 2.0 = 3.5

لا استثناءات: الدالة التي قد تفشل تقول ذلك في نوعها، ومعالجتها إلزامية عند الترجمة:

الخطأ قيمة
اخطاء:
قسمة_على_صفر
داله اقسم(ا عدد, ب عدد) !عدد:
اذا ب == 0:
ارجع خطأ.قسمة_على_صفر
ارجع ا / ب
اطبع(اقسم(10, 2) والا -1)
اطبع(اقسم(10, 0) والا -1)
ن = اقسم(7, 0) والا خ:
اطبع("فشل: ", خ)
0
اطبع(ن)
مخرجات مسجّلة من المجمّعmeem 15_اخطاء.م · meem 0.10.0+b01b55f
5-1فشل: قسمة_على_صفر0

الذاكرة يدوية: لا جامع قمامة. في برنامج قصير لا يضرك ذلك، فكل شيء يعود عند الخروج. وفي حلقة طويلة تحرّر ما تبنيه بـ خاتمه حرر(...). ابدأ بـ الذاكرة للمبتدئ: ثلاث قواعد.

الأداء مقارنة ببايثون (قياسات 0.9.1)

رابط إلى قسم «الأداء مقارنة ببايثون (قياسات 0.9.1)»

في تقرير التوجّه: الخوارزميات أسرع بكثير (بمستوى C)، ومعالجة النصوص بمستوى بايثون في الزمن (0.70 ث مقابل 0.74)، لكن بذاكرة أكثر بنحو 7 مرات، لأن الملف يُقرأ كله ولا قراءة سطراً سطراً بعد. التفصيل في ماذا تستطيع ميم وما لا تستطيع.

تعلّم ميم · التعامل مع الأخطاء · ورقة الغش