چند هزینه، یک لیست
سه خرید ۴۵۰۰۰، ۳۰۰۰۰ و ۲۵۰۰۰ تومانی داری. لیست چند مقدار را به ترتیب نگه میدارد: [45000, 30000, 25000]. حلقه for یکییکی سراغ این مقدارها میرود. هر بار، نام amount به مقدار همان دور اشاره میکند.
جمع را قدمبهقدم ببین
جمع سه خرید
یک خرید دیگر به انتهای لیست اضافه کن.
expenses = [45000, 30000, 25000]
total = 0
for amount in expenses:
total = total + amount
print(f"جمع تا اینجا: {total}")
print(f"جمع روز: {total}")یک راهنمایی میخواهم
total = 0 باید بیرون حلقه باشد.
راهنمایی بیشتر
برای افزودن خرید، مثلاً 10000 را با ویرگول به انتهای لیست اضافه کن.
سه خط اول خروجی حلقه، ۴۵۰۰۰، ۷۵۰۰۰ و ۱۰۰۰۰۰ هستند. خط آخر هم جمع روز ۱۰۰۰۰۰ را نشان میدهد. اگر total = 0 را داخل حلقه ببری، جمع در هر دور پاک میشود و فقط آخرین هزینه میماند. print آخر تورفتگی ندارد، پس بعد از پایان حلقه اجرا میشود.
برداشتن، افزودن، شمردن
expenses[0] اولین هزینه است؛ شمارهگذاری از صفر شروع میشود. expenses.append(10000) یک مقدار اضافه میکند و len(expenses) تعداد را میدهد. دسترسی به شمارهای که وجود ندارد IndexError میدهد. برای جمع ساده، بعد از فهم حلقه میتوانی sum(expenses) بنویسی.
برای تکرار به تعداد معلوم، range(3) مقدارهای ۰، ۱ و ۲ را میدهد؛ انتهای بازه وارد نتیجه نمیشود. while تا وقتی شرط درست بماند تکرار میکند. اگر شرط هیچوقت تغییر نکند، حلقه تمام نمیشود؛ فعلاً برای فهرست هزینهها for کافی است.
تمرین: لیست را خالی کن. خروجی نهایی باید صفر باشد و هیچ خطی از داخل حلقه چاپ نشود. بعد ۱۰۰۰۰ را به لیست اصلی اضافه کن؛ جواب ۱۱۰۰۰۰ است.
