Програмирање

Како радити са датотекама у Питхону

Како радити са датотекама у Питхону

Питхон је невероватан програмски језик за већину задатака, као што су веб развој, АИ, аутоматизација или опште програмирање. Рад са датотекама и мапама је важан јер их морамо користити за аутоматизацију задатака или складиштење података и разне друге сличне задатке.

Да би радио са датотекама посебног формата, као што су сликовне датотеке, ЈСОН датотеке, ПДФ, ЦСВ датотеке или датотеке база података, питхон има невероватне модуле написане од сјајних програмера који нам олакшавају задатак. Можете погледати наш корак по корак водич о раду са датотекама СКЛ базе података помоћу питхона помоћу којег можете научити СКЛите, што је одличан начин за чување и преузимање података програма питхон.

Пре него што започнемо, прво морамо да инсталирамо питхон у систем. Ако га немате инсталиран, можете видети наш водич за инсталирање питхон-а.

Рад са датотекама у Питхону

Датотеке су важан део нашег свакодневног посла. За многе задатке користимо ПДФ датотеке, Екцел датотеке или уобичајене текстуалне датотеке. Водичи које читате на овој веб локацији налазе се у ХТМЛ датотеци коју прегледач обрађује. Као и многи други програмски језици, и Питхон подржава руковање датотекама.

Отварање и затварање датотека

Датотеку можемо лако отворити у питхону користећи уграђену функцију опен (). Функција опен прихвата многе аргументе, али главни потребан аргумент је пут до датотеке коју желимо да отворимо. Функција опен () има један повратак, а то је објект датотеке.

филе_обј = опен ("име датотеке.ткт ")

Код ће отворити датотеку под називом „име датотеке.ткт, “текстуална датотека која се налази у истој фасцикли. Тада ће сачувати повратни објект датотеке у променљивој филе_обј.

Када завршимо сву обраду са датотеком, морамо се сетити затварања датотеке. Датотека се у многим случајевима затвара након завршетка програма, али је добро да је затворите помоћу функције цлосе () кад год нам не треба. Ако заборавимо да затворимо датотеку, она ће једноставно потрошити меморију, што ће успорити програм. Сматра се лошом праксом за веће пројекте.

Да бисмо затворили отворену датотеку, морамо да користимо функцију цлосе () објекта датотеке.

# овде ћемо отворити назив датотеке.ткт филе_обј = опен ("име датотеке.ткт ") принт (" Датотека је успешно отворена ... ") # Сада можемо извршити обраду са датотеком # Након обраде потребно је да затворимо датотеку филе_обј.цлосе () принт ("Датотека је затворена ...")

Отворили смо датотеку под називом назив документа.ткт у истој фасцикли помоћу функције опен (), а затим је затворите помоћу функције цлосе ().

Излаз:

отварање и затварање датотеке

Иако је функција цлосе () корисна за затварање датотеке, постоји још један начин да затворите датотеку, тј.е., отварањем датотеке помоћу са изјава.

Пример:

са опен ("име датотеке.ткт ") као филе_обј: # Овде иду операције са датотекама

Код ће аутоматски затворити датотеку чим изађемо из са блокирати. Изјава витх такође затвара датотеку ако буде грешке, па је боље користити наредбу витх, јер можемо затворити датотеку и лако се носити са грешкама датотеке користећи је.

Режими отварања датотека

Иако се функција опен () може користити са само једним аргументом, тј.е., путању датотеке, можемо користити и други аргумент са именом моду. Означава режим који се користи за отварање датотеке.

На пример, ако желимо да отворимо датотеку само за читање и не желимо да је уређујемо, можемо користити режим 'р' као аргумент за функцију опен (), што значи режим само за читање. Ово је уједно и подразумевани режим за функцију опен (). За писање или модификовање датотеке треба да отворимо датотеку у режиму писања користећи 'в' као аргумент.

Пример:

са опен ("име датотеке.ткт ", в"): # Ево наредби # које ће се изводити на датотеци

Овај код ће отворити датотеку у режиму писања, тако да можете извршити операције писања на датотеци.

Такође могу бити ситуације када желимо да отворимо датотеку у бинарном режиму да бисмо извршили неку операцију над њом. Да бисмо то урадили, морамо мод "рб" за читање у бинарном режиму и "вб" за писање у бинарном режиму.

Пример:

са опен ("име датотеке.дат "," рб "): # Овде иду изрази # који се изводе на бинарној датотеци

Отвориће датотеку података која се зове филенаме.дат у бинарном режиму само за читање.

До сада смо научили како да отворимо датотеку и затворимо датотеку. Сада да видимо како можемо читати податке из датотеке помоћу Питхона.

Читање датотека помоћу Питхона

Постоји много начина на које можемо читати податке из отворене датотеке у питхону, али најчешћи начин је коришћење функција реад (), реадлине () и реадлинес ().

Функција читања ()

Као аргумент прихвата број бајтова који се чита из датотеке и чита ту количину бајтова из датотеке.

Ако не пружимо ниједан аргумент или не користимо Ноне или -1 као аргумент функције реад (), тада ће се читава датотека читати у режиму само за читање.

Пример:

са опен ("име датотеке.ткт ") као филе_обј: # помоћу функције реад () за читање бајтова # из објекта објекта речи вордс = филе_обј.реад () принт (речи)

Излаз:

читање података из датотеке помоћу функције реад ()

Можда ћете требати да направите узорак датотеке.ткт са демо садржајем или наведите друге датотеке у аргументу функције опен () пре покретања програма; у супротном, питхон ће бацити ФилеНотФоундЕррор као што је приказано доле.

Трацебацк (последњи последњи позив): Датотека „датотека.пи ", ред 1, у са опен (" име датотеке.ткт ") као филе_обј: ФилеНотФоундЕррор: [Еррно 2] Нема такве датотеке или директоријума: 'име датотеке.ткт '

Функција реад () је невероватан начин за читање бајтова из датотеке, али постоји више начина за читање података из датотеке. Углавном постоје још две методе за читање података из датотеке. Они су методе реадлине () и реадлинес ().

Функција реадлине ()

Функција реадлине () користи се за читање редова одједном. Сваки пут кад га покренемо, добићемо следећи ред датотеке.

Пример:

са опен ("име датотеке.ткт "," р ") као филеобј: испис (филеобј.реадлине ()) # исписује испис првог реда (филеобј.реадлине ()) # исписује други ред

Излаз: Исписат ћемо први и други ред датотеке.

читање података помоћу функције реадлине ()

Такође можемо проследити број знакова који се читају из реда као аргумент функцији реадлине ().

Пример:

са опен ("име датотеке.ткт "," р ") као филеобј: испис (филеобј.реадлине (15)) # исписује првих 15 бајтова

Излаз:

одређивање броја знакова у функцији реадине ()

Функција реадлинес ()

Функција реадлинес () користи се за читање свих редова датотеке. Ова функција ће вратити листу свих линија присутних у датотеци. Ако не треба да покренемо све линије, онда као аргумент можемо одредити и број линија који нам је потребан.

Пример:

са опен ("име датотеке.ткт "," р ") као филеобј: испис (филеобј.реадлинес ()) # враћа листу свих линија

Излаз:

функција реадлинес ()

Писање датотека помоћу Питхона

Да бисмо податке записали у датотеку помоћу питхона, морамо да користимо методу врите () објекта датотеке. Функција писања прихвата податке као аргумент који желимо да упишемо у датотеку.

Пример:

лине = "Ово је нова линија \ н" са опен ("име датотеке.ткт "," в ") као филеобј: испис (филеобј.напиши (линија)

При покретању кода, сви назив документа.ткт подаци ће бити замењени низом „Ово је нова линија“. Ако немате назив документа.ткт датотека која је раније била присутна, тада ће је створити.

Додавање датотека

Док пишете датотеку као што смо то радили у претходном коду, могли бисте приметити да нови подаци замењују све претходне податке присутне у датотеци. Понекад се од нас тражи да додамо нове податке уместо да их преписујемо. Морамо отворити датотеку у режиму „а“, а затим користити функцију врите () за писање података.

Пример:

лине = "\ нОво је нова линија" са опен ("име датотеке.ткт "," а ") као филеобј: испис (филеобј.напиши (линија)

Имат ћемо нови ред записан у називу датотеке.ткт без замене претходних редова приликом покретања кода.

Преименовање и брисање датотека

Да бисмо преименовали датотеку, морамо да користимо функцију ренаме () ос модула. Функција преименовања прихвата два важна аргумента, први аргумент је пут до датотеке коју желимо да преименујемо, а други аргумент је ново име оригиналне датотеке.

Пример:

увоз ос ос.преименовати ("датотека1.ткт, датотека2.ткт ")

Код ће преименовати датотеку филе1.ткт са именом филе2.ткт.

Да бисмо избрисали датотеку помоћу питхона, морамо да користимо уклони () функција ос модул.

Пример:

увоз ос ос.ремове ("узорак.ткт ")

Ово ће избрисати датотеку узорак.ткт присутан у тренутном директоријуму. Такође можете дати путању датотеке ако је она присутна у другим директоријумима. Ако датотека не постоји у датој путањи, добићемо ФилеНотФоундЕррор. Користите метод руковања изузецима описан у претходној подтеми за решавање грешака.

Закључак

У овом упутству научили смо све што је потребно за рад са датотекама у питхону, као што је стварање датотека, читање података из датотека, писање података у датотеке, уклањање и преименовање датотека итд.

Такође се можете обратити нашем водичу корак по корак о раду са СКЛите базом података на питхону, где можете научити све што требате знати док радите са СКЛите базама података у питхону.

10 најбољих игара за играње на Убунту-у
Виндовс платформа је била једна од доминантних платформи за играње игара због огромног процента игара које се данас развијају да би подржале Виндовс. ...
5 најбољих аркадних игара за Линук
У данашње време рачунари су озбиљне машине које се користе за игре на срећу. Ако не успете да добијете нови високи резултат, знаћете на шта мислим. У ...
Битка за Веснотх 1.13.6 Развој објављен
Битка за Веснотх 1.13.6 објављено прошлог месеца, шесто је развојно издање у издању 1.13.к сериес и доноси низ побољшања, посебно корисничког интерфеј...