פייתון/פייתון גרסה 3/לולאת for: הבדלים בין גרסאות בדף

תוכן שנמחק תוכן שנוסף
Mathreturn (שיחה | תרומות)
Mathreturn (שיחה | תרומות)
←‏הגבלת זיכרון: העברה לערך חדש.
שורה 211:
</source>
 
==הגבלת זיכרון ==
קיימת הגבלה של זיכרון (Memory Limitation) בפייתון.
 
<source lang = "python">
 
L=['a','b','c']
 
for x in L:
L.append(x.upper())
print(L)
 
>>>Traceback (most recent call last):
File "C:\Users\user\Desktop\python\reading and writing files.py", line 5, in <module>
L.append(x.upper())
MemoryError
</source>
 
לוקח ללולאה להטען זמן רב מפני שכתבנו תוכנה שכל הזמן מוסיפה לרשימה את הרשימה עצמה ולכן היא איננה מסתיימת. בחלק מהתכונות ניתן אף לראות את אורך זמן ההרצאה והזכרון שתוספת ההרצה.
 
לאחר המתנה נקבל הודעת שגיאה הנובעת ממקום בזיכרון. פיתון יכולה להכיל טיפוסים באורך של כ-32 [[פייתון/פייתון גרסה 3/מספר התווים והבתים של קובץ|בתים]].
 
איך נבצע תיקון? נוסיף את התווים החדשים שמתקבלים לרשימה אחרת:
 
<source lang = "python">
L=['a','b','c']
L_1=[]
 
for x in L:
L_1.append(x.upper())
print(L_1)
 
>>>['A', 'B', 'C']
</source>
 
===ראה גם===