Введение в язык Питон


Операции с файлами. - часть 2


>>> f.read() 'This is the entire file.\n' >>> f.read() ''

  • Метод readline() читает одну строку файла до символа перевода строки(включая сам символ \n). Если строка состоит только из символа перевода строки, то метод readline() возвращает пустую строку. Если в конце файла нет пустой строки с символом \n, то возвращаемый результат неопределён(этого допускать нельзя):

    >>> f.readline() 'This is the first line of the file.\n'

    >>> f.readline() 'Second line of the file\n'

    >>> f.readline() ''

  • Метод readlines([размер_строки]) читает все строки файла в список. Читаются только законченные строки. Необязательный параметр размер_строки дополняет читает строку, и если она меньше указанной длины читает дальше, до достижения указанного числа символов, такой приём эффективен для чтения очень больших файлов построчно без необходимости размещения его в памяти:

    >>> f.readlines()

    ['This is the first line of the file.\n', 'Second line of the file\n']

  • Метод write(строка) пишет в файл указанную строку, ничего при этом не возвращая:

    >>> f.write('This is a test\n')

  • Метод seek(на_сколько_байт[, откуда]) перемещает указатель текущего положения файла на заданное количество байт от позиции, указанной вторым аргументом:

    0(по умолчанию)

    1

    2

    начало файла

    текущая позиция в файле

    конец файла

      При этом, число байт для перемещения может быть как положительным, так и отрицательным(назад).

    • Метод tell() возвращает текущую позицию в файле:

      >>> f=open('/tmp/workfile', 'r+')

      >>> f.write('0123456789abcdef')

      >>> f.seek(5) # Переход к шестому байту от начала

      >>> f.read(1)

      '5'

      >>> f.seek(-3, 2) # Переход к третьему байту до конца файла

      >>> f.read(1)

      'd'

    • Метод close() закрывает объект файла, перенося все сделанные в нём изменения на диск, возвращая ресурсы операционной системе. Обязательно закрывайте все файлы, сто больше не используете, т.к. не закрытый файл может привести к потере данных. После закрытия обращение к объекту файла автоматически вызывает ошибку




    Начало  Назад  Вперед



    Книжный магазин