Reading Files

Python dasturlash tilida fayllarni o'qish juda oson.

SU

Fayllarni O'qish

Python dasturlash tilida fayllarni o'qish juda oson. Aslida, siz faylni ochganingizda va mode argumentini belgilamasangiz, standart usul bu faylni “o'qish uchun” rejimda ochishdir.

Quyida bir misol keltirilgan:

1 with open('example.txt') as file_handler:
2 for line in file_handler:
3 print(line)

Ushbu kod matn faylini ochadi va keyin fayldagi har bir qatorni aylanib chiqadi va uni chop etadi. Ha, file_handler ni Python’ning for sikli yordamida aylantirish mumkin, bu juda qulay. Aslida, bu faylni o'qish uchun tavsiya etilgan usullardan biridir, chunki siz uni bo'laklar bilan o'qiyapsiz, shuning uchun xotira tugamaydi.

Fayldagi satrlarni aylantirishning muqobil usuli quyidagicha bo'lishi mumkin:

1 with open('example.txt') as file_handler:
2 lines = file_handler.readlines()
3 for line in lines:
4 print(line)

Agar siz bu yo'ldan borsangiz, unda siz faylni to'liq xotiraga o'qib olasiz. Qanday qilib sizning mashinangizda qancha RAM bo'lishiga qarab, xotira tugashi mumkin. Shuning uchun birinchi usul tavsiya etiladi. Ammo agar siz faylning juda kichik ekanligini bilsangiz, faylni to'liq xotiraga o'qishning yana bir usuli mavjud:

1 with open('example.txt') as file_handler:
2 file_contents = file_handler.read()

read() metodi faylni to'liq xotiraga o'qiydi va natijani o'z o'zgaruvchingizga tayinlaydi.

Ba'zan siz faylni kichik yoki katta bo'laklarda o'qishni xohlashingiz mumkin. Buni read() metodiga o'qiladigan baytlar sonini belgilab amalga oshirish mumkin. Buning uchun while siklidan foydalanishingiz mumkin:

1 while True:
2 with open('example.txt') as file_handler:
3 data = file_handler.read(1024)
4 if not data:
5 break
6 print(data)

Ushbu misolda, siz har safar 1024 bayt o'qiyapsiz. read() chaqirilganda va bo'sh qator qaytarsa, while sikli to'xtaydi, chunki break operatori bajariladi.

Ushbu sahifada

Xato haqida xabar berish