ข้อมูลเดียวกันเพียงในรูปแบบตาราง
| r r+ w w+ a a+
------------------|--------------------------
read | + + + +
write | + + + + +
write after seek | + + +
create | + + + +
truncate | + +
position at start | + + + +
position at end | + +
ความหมายคือ: (เพื่อหลีกเลี่ยงการตีความผิด ๆ )
- อนุญาตให้อ่าน - อ่านจากไฟล์ได้
อนุญาตให้เขียน - เขียนไปยังไฟล์ได้
สร้าง - ไฟล์ถูกสร้างขึ้นหากยังไม่มีอยู่
trunctate - ในระหว่างการเปิดไฟล์มันจะว่างเปล่า (เนื้อหาทั้งหมดของไฟล์จะถูกลบ)
position at start - หลังจากเปิดไฟล์แล้วตำแหน่งเริ่มต้นจะถูกตั้งไว้ที่จุดเริ่มต้นของไฟล์
- position at end - หลังจากเปิดไฟล์แล้วตำแหน่งเริ่มต้นจะถูกตั้งไว้ที่ท้ายไฟล์
หมายเหตุ: a
และa+
ต่อท้ายไฟล์เสมอ - ละเว้นseek
การเคลื่อนไหวใด ๆ
BTW พฤติกรรมที่น่าสนใจอย่างน้อยใน win7 / python2.7 ของฉันสำหรับไฟล์ใหม่ที่เปิดในa+
โหมด:
write('aa'); seek(0, 0); read(1); write('b')
- ที่สองwrite
ถูกละเว้น
write('aa'); seek(0, 0); read(2); write('b')
- ที่สองwrite
เพิ่มขึ้นIOError