file.seek() تحريك موضع الملف

آخر تحديث: 2026-09-22

file.seek() تحريك موضع الملف

file.seek(offset, whence=0) يحرك موضع القراءة والكتابة في الملف؛ القيمة 0 لـ whence تعني من البداية، و1 من الموضع الحالي، و2 من النهاية.

التصنيفدوال الملفات
النوعدوال الأنواع المدمجة
إصدار بايثونall

📝 الصياغة

file.seek()

⚙️ المعاملات

offset مطلوبOffset relative to whence; may be negative.
whence اختياريReference: 0=start, 1=current position, 2=end.(القيمة الافتراضية:0)

القيمة المُعادة:int. The new file position.

يعدّل الكائن الأصلي:لا (يُعيد كائنًا جديدًا)

💥 الاستثناءات

▶ مثال

عدّل الكود واضغط تشغيل لرؤية النتيجة في لوحة المخرجات:

المخرجات:

34
المزيد من الحالات قادم قريباً — تابعونا.

❓ أسئلة شائعة

Qكيف يُفهَم وسيط whence في seek()؟
A0 يعني نسبةً إلى بداية الملف، و 1 نسبةً إلى الموضع الحالي، و 2 نسبةً إلى نهاية الملف. قد تكون الإزاحة (offset) سالبة (عند الحركة للخلف نسبةً إلى المرجع).
Qما القيود الموجودة في وضع النص؟
Aفي وضع النص لا يمكن تحديد الموضع إلا من البداية (whence=0)، وعادةً لا يمكن استخدام للإزاحة إلا القيمة التي تُرجعها tell()؛ فالتزحزح غير الصفري من الموضع الحالي أو من النهاية يُطلق OSError. الوضع الثنائي فقط يدعم whence=1/2.
Qكيف يُعرَف الموضع بعد seek()؟
Aتُرجع seek() الموضع الجديد بعد التحرك، ويمكنك أيضًا الاستعلام عنه في أي وقت باستخدام tell().
Qكيف تُكتب العودة إلى البداية لإعادة القراءة؟
Af.seek(0).
Web-Tutorial.com

فريق Web-Tutorial التقني

منصة دروس برمجية يديرها عدة مطورين. كل درس يتم كتابته ومراجعته بواسطة مطورين متخصصين في المجال. نعمل على ضمان دقة وموثوقية المحتوى — إذا لاحظت أي مشكلة، فيرجى إخبارنا.

100%