Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> Python

Python — файловый ввод-вывод

Предыдущая страницаСледующая страница

В этой главе рассматриваются все основные функции ввода-вывода, доступные в Python. Дополнительные функции см. в стандартной документации Python.

Печать на экран

Самый простой способ произвести вывод — использовать print оператор, в котором вы можете передать ноль или более выражений, разделенных запятыми. Эта функция преобразует выражения, которые вы передаете, в строку и записывает результат в стандартный вывод следующим образом —

Живая демонстрация
#!/usr/bin/python

print "Python is really a great language,", "isn't it?"

Это дает следующий результат на стандартном экране —

Python is really a great language, isn't it?

Чтение ввода с клавиатуры

Python предоставляет две встроенные функции для чтения строки текста со стандартного ввода, который по умолчанию поступает с клавиатуры. Эти функции —

raw_input Функция

raw_input([приглашение]) функция читает одну строку из стандартного ввода и возвращает ее в виде строки (удаляя завершающую новую строку).

#!/usr/bin/python

str = raw_input("Enter your input: ")
print "Received input is : ", str

Это предложит вам ввести любую строку, и она отобразит ту же строку на экране. Когда я набрал «Hello Python!», вывод был таким:

Enter your input: Hello Python
Received input is :  Hello Python

ввод Функция

input([приглашение]) эквивалентна функции raw_input, за исключением того, что она предполагает, что ввод является допустимым выражением Python, и возвращает вам оцененный результат.

#!/usr/bin/python

str = input("Enter your input: ")
print "Received input is : ", str

Это даст следующий результат против введенного ввода —

Enter your input: [x*5 for x in range(2,10,2)]
Recieved input is :  [10, 20, 30, 40]

Открытие и закрытие файлов

До сих пор вы читали и писали на стандартный ввод и вывод. Теперь мы увидим, как использовать настоящие файлы данных.

Python по умолчанию предоставляет основные функции и методы, необходимые для работы с файлами. Большинство операций с файлами можно выполнять с помощью файла. объект.

открыть Функция

Прежде чем вы сможете прочитать или записать файл, вы должны открыть его с помощью встроенной в Python функции open(). функция. Эта функция создает файл объект, который будет использоваться для вызова других связанных с ним методов поддержки.

Синтаксис

file object = open(file_name [, access_mode][, buffering])

Вот подробности параметров —

Вот список различных режимов открытия файла —

<тд>

р

Открывает файл только для чтения. Указатель файла помещается в начало файла. Это режим по умолчанию.

<тд>

рб

Открывает файл для чтения только в бинарном формате. Указатель файла помещается в начало файла. Это режим по умолчанию.

<тд>

г+

Открывает файл как для чтения, так и для записи. Указатель файла помещается в начало файла.

<тд>

рб+

Открывает файл для чтения и записи в двоичном формате. Указатель файла помещается в начало файла.

<тд>

ж

Открывает файл только для записи. Перезаписывает файл, если он существует. Если файл не существует, создает новый файл для записи.

<тд>

вб

Открывает файл для записи только в бинарном формате. Перезаписывает файл, если он существует. Если файл не существует, создает новый файл для записи.

<тд>

ж+

Открывает файл как для записи, так и для чтения. Перезаписывает существующий файл, если он существует. Если файл не существует, создает новый файл для чтения и записи.

<тд>

вб+

Открывает файл для записи и чтения в двоичном формате. Перезаписывает существующий файл, если он существует. Если файл не существует, создает новый файл для чтения и записи.

<тд>

а

Открывает файл для добавления. Указатель файла находится в конце файла, если файл существует. То есть файл находится в режиме добавления. Если файл не существует, создается новый файл для записи.

<тд>

аб

Открывает файл для добавления в двоичном формате. Указатель файла находится в конце файла, если файл существует. То есть файл находится в режиме добавления. Если файл не существует, создается новый файл для записи.

<тд>

а+

Открывает файл как для добавления, так и для чтения. Указатель файла находится в конце файла, если файл существует. Файл открывается в режиме добавления. Если файл не существует, создается новый файл для чтения и записи.

<тд>

аб+

Открывает файл для добавления и чтения в двоичном формате. Указатель файла находится в конце файла, если файл существует. Файл открывается в режиме добавления. Если файл не существует, создается новый файл для чтения и записи.

Серийный номер Режимы и описание
1
2
3
4
5
6
7
8
9
10
11
12

файл Атрибуты объекта

Когда файл открыт и у вас есть один файл объект, вы можете получить различную информацию, связанную с этим файлом.

Вот список всех атрибутов, связанных с файловым объектом —

<тд>

файл.закрыт

Возвращает true, если файл закрыт, иначе false.

<тд>

файл.режим

Возвращает режим доступа, с которым был открыт файл.

<тд>

имя_файла

Возвращает имя файла.

<тд>

файл.softspace

Возвращает false, если пространство явно требуется для печати, в противном случае возвращает true.

Серийный номер Атрибут и описание
1
2
3
4

Пример

Живая демонстрация
#!/usr/bin/python

# Open a file
fo = open("foo.txt", "wb")
print "Name of the file: ", fo.name
print "Closed or not : ", fo.closed
print "Opening mode : ", fo.mode
print "Softspace flag : ", fo.softspace

Это дает следующий результат —

Name of the file:  foo.txt
Closed or not :  False
Opening mode :  wb
Softspace flag :  0

закрыть() Метод

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

Python автоматически закрывает файл, когда ссылочный объект файла переназначается другому файлу. Рекомендуется использовать метод close() для закрытия файла.

Синтаксис

fileObject.close()

Пример

Живая демонстрация
#!/usr/bin/python

# Open a file
fo = open("foo.txt", "wb")
print "Name of the file: ", fo.name

# Close opend file
fo.close()

Это дает следующий результат —

Name of the file:  foo.txt

Чтение и запись файлов

файл object предоставляет набор методов доступа, облегчающих нашу жизнь. Мы хотели бы увидеть, как использовать read() и написать() методы чтения и записи файлов.

запись() Метод

запись() Метод записывает любую строку в открытый файл. Важно отметить, что строки Python могут содержать двоичные данные, а не только текст.

Метод write() не добавляет символ новой строки ('\n') в конец строки —

Синтаксис

fileObject.write(string)

Здесь переданный параметр — это содержимое, которое будет записано в открытый файл.

Пример

#!/usr/bin/python

# Open a file
fo = open("foo.txt", "wb")
fo.write( "Python is a great language.\nYeah its great!!\n")

# Close opend file
fo.close()

Вышеупомянутый метод создаст foo.txt файл и будет записывать заданный контент в этот файл и, наконец, закроет этот файл. Если бы вы открыли этот файл, он имел бы следующее содержимое.

Python is a great language.
Yeah its great!!

Функция read() Метод

чтение() Метод читает строку из открытого файла. Важно отметить, что строки Python могут содержать двоичные данные. помимо текстовых данных.

Синтаксис

fileObject.read([count])

Здесь переданный параметр — это количество байтов, которое нужно прочитать из открытого файла. Этот метод начинает чтение с начала файла, и если count отсутствует, то он пытается прочитать как можно больше, возможно, до конца файла.

Пример

Возьмем файл foo.txt , который мы создали выше.

#!/usr/bin/python

# Open a file
fo = open("foo.txt", "r+")
str = fo.read(10);
print "Read String is : ", str
# Close opend file
fo.close()

Это дает следующий результат —

Read String is :  Python is

Позиции в файлах

рассказать() метод сообщает вам текущую позицию в файле; другими словами, следующее чтение или запись произойдет на столько же байтов от начала файла.

seek(offset[, from]) метод изменяет текущую позицию файла. смещение Аргумент указывает количество байтов, которые необходимо переместить. от Аргумент указывает ссылочную позицию, из которой должны быть перемещены байты.

Если из установлено на 0, это означает использование начала файла в качестве исходной позиции, а 1 означает использование текущей позиции в качестве исходной позиции, а если установлено значение 2, то конец файла будет принят в качестве исходной позиции.

Пример

Возьмем файл foo.txt , который мы создали выше.

#!/usr/bin/python

# Open a file
fo = open("foo.txt", "r+")
str = fo.read(10)
print "Read String is : ", str

# Check current position
position = fo.tell()
print "Current file position : ", position

# Reposition pointer at the beginning once again
position = fo.seek(0, 0);
str = fo.read(10)
print "Again read String is : ", str
# Close opend file
fo.close()

Это дает следующий результат —

Read String is :  Python is
Current file position :  10
Again read String is :  Python is

Переименование и удаление файлов

Python ОС модуль предоставляет методы, помогающие выполнять операции с файлами, такие как переименование и удаление файлов.

Чтобы использовать этот модуль, вам нужно сначала импортировать его, а затем вы можете вызывать любые связанные функции.

Метод rename()

переименовать() Метод принимает два аргумента:текущее имя файла и новое имя файла.

Синтаксис

os.rename(current_file_name, new_file_name)

Пример

Ниже приведен пример переименования существующего файла test1.txt. −

#!/usr/bin/python
import os

# Rename a file from test1.txt to test2.txt
os.rename( "test1.txt", "test2.txt" )

удалить() Метод

Вы можете использовать remove() метод для удаления файлов, указав имя файла, который нужно удалить, в качестве аргумента.

Синтаксис

os.remove(file_name)

Пример

Ниже приведен пример удаления существующего файла test2.txt. −

#!/usr/bin/python
import os

# Delete file test2.txt
os.remove("text2.txt")

Каталоги в Python

Все файлы содержатся в различных каталогах, и Python также без проблем справляется с ними. ОС Модуль имеет несколько методов, помогающих создавать, удалять и изменять каталоги.

mkdir() Метод

Вы можете использовать mkdir() метод os модуль для создания каталогов в текущем каталоге. Вам необходимо предоставить аргумент этому методу, который содержит имя создаваемого каталога.

Синтаксис

os.mkdir("newdir")

Пример

Ниже приведен пример создания каталога test. в текущем каталоге —

#!/usr/bin/python
import os

# Create a directory "test"
os.mkdir("test")

chdir() Метод

Вы можете использовать chdir() способ изменить текущий каталог. Метод chdir() принимает в качестве аргумента имя каталога, который вы хотите сделать текущим.

Синтаксис

os.chdir("newdir")

Пример

Ниже приведен пример перехода в каталог «/home/newdir» —

#!/usr/bin/python
import os

# Changing a directory to "/home/newdir"
os.chdir("/home/newdir")

Функция getcwd() Метод

getcwd() метод отображает текущий рабочий каталог.

Синтаксис

os.getcwd()

Пример

Ниже приведен пример для указания текущего каталога —

#!/usr/bin/python
import os

# This would give location of the current directory
os.getcwd()

rmdir() Метод

rmdir() метод удаляет каталог, который передается в качестве аргумента метода.

Перед удалением каталога необходимо удалить все его содержимое.

Синтаксис

os.rmdir('dirname')

Пример

Ниже приведен пример удаления каталога «/tmp/test». Необходимо указать полное имя каталога, иначе он будет искать этот каталог в текущем каталоге.

#!/usr/bin/python
import os

# This would  remove "/tmp/test"  directory.
os.rmdir( "/tmp/test"  )

Методы, связанные с файлами и каталогами

Есть три важных источника, которые предоставляют широкий спектр служебных методов для обработки и управления файлами и каталогами в операционных системах Windows и Unix. Они следующие —


Python

  1. C Вход Выход (ввод/вывод)
  2. C Обработка файлов
  3. Ввод, вывод и импорт Python
  4. Файловый ввод-вывод Python
  5. Управление каталогами и файлами Python
  6. Python Проверить, существует ли файл | Как проверить, существует ли каталог в Python
  7. C - файловый ввод/вывод
  8. C — заголовочные файлы
  9. Файлы и потоки C++
  10. С# — файловый ввод-вывод