Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
19 views

Python 3 - Files I - O

This document provides an overview of file input/output (I/O) functions in Python 3. It discusses printing to the screen, reading keyboard input, opening and closing files, and reading from and writing to files. Functions covered include print(), input(), open(), close(), read(), and write(). It provides examples of using these functions to output text to the screen, get user input, open a file for reading/writing, close a file, and read from or write strings to an open file.

Uploaded by

peace maker
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
19 views

Python 3 - Files I - O

This document provides an overview of file input/output (I/O) functions in Python 3. It discusses printing to the screen, reading keyboard input, opening and closing files, and reading from and writing to files. Functions covered include print(), input(), open(), close(), read(), and write(). It provides examples of using these functions to output text to the screen, get user input, open a file for reading/writing, close a file, and read from or write strings to an open file.

Uploaded by

peace maker
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 11

17.01.

2023 17:15 Python 3 - Files I/O

Python 3 - Files I/O

This chapter covers all the basic I/O functions available in Python 3. For more functions, please refer
to the standard Python documentation.

Printing to the Screen


The simplest way to produce output is using the print statement where you can pass zero or more
expressions separated by commas. This function converts the expressions you pass into a string
and writes the result to standard output as follows −

 Live Demo
#!/usr/bin/python3

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

This produces the following result on your standard screen −

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

AD

In-store shopping
Reading Keyboard Input
Python 2 has two built-in functions to read data from standard input, which by default comes from
the keyboard. These functions are input() and raw_input()

In Python 3, raw_input() function is deprecated. Moreover, input() functions read data from keyboard
as string, irrespective of whether it is enclosed with quotes ('' or "" ) or not.

The input Function


The input([prompt]) function is equivalent to raw_input, except that it assumes that the input is a
valid Python expression and returns the evaluated result to you.

#!/usr/bin/python3

>>> x = input("something:")
something:10

https://www.tutorialspoint.com/python3/python_files_io.htm 1/11
17.01.2023 17:15 Python 3 - Files I/O

>>> x
'10'

>>> x = input("something:")
something:'10' #entered data treated as string with or without ''

>>> x
"'10'"

Mağazada İncele
AD

Nike Factory Store


Opening and Closing Files
Until now, you have been reading and writing to the standard input and output. Now, we will see how
to use actual data files.

Python provides basic functions and methods necessary to manipulate files by default. You can do
most of the file manipulation using a file object.

The open Function


Before you can read or write a file, you have to open it using Python's built-in open() function. This
function creates a file object, which would be utilized to call other support methods associated with
it.

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

Here are parameter details −

file_name − The file_name argument is a string value that contains the name of the file that you
want to access.

access_mode − The access_mode determines the mode in which the file has to be opened,
i.e., read, write, append, etc. A complete list of possible values is given below in the table. This
is an optional parameter and the default file access mode is read (r).

buffering − If the buffering value is set to 0, no buffering takes place. If the buffering value is 1,
line buffering is performed while accessing a file. If you specify the buffering value as an integer
greater than 1, then buffering action is performed with the indicated buffer size. If negative, the
buffer size is the system default(default behavior).

Here is a list of the different modes of opening a file −

https://www.tutorialspoint.com/python3/python_files_io.htm 2/11
17.01.2023 17:15 Python 3 - Files I/O

Sr.No. Mode & Description

1
r

Opens a file for reading only. The file pointer is placed at the beginning of the file. This is
the default mode.

2
rb

Opens a file for reading only in binary format. The file pointer is placed at the beginning of
the file. This is the default mode.

3
r+

Opens a file for both reading and writing. The file pointer placed at the beginning of the
file.

4
rb+

Opens a file for both reading and writing in binary format. The file pointer placed at the
beginning of the file.

5
w

Opens a file for writing only. Overwrites the file if the file exists. If the file does not exist,
creates a new file for writing.

6
wb

Opens a file for writing only in binary format. Overwrites the file if the file exists. If the file
does not exist, creates a new file for writing.

7
w+

Opens a file for both writing and reading. Overwrites the existing file if the file exists. If the
file does not exist, creates a new file for reading and writing.

8
wb+

Opens a file for both writing and reading in binary format. Overwrites the existing file if the
file exists. If the file does not exist, creates a new file for reading and writing.

9
a

https://www.tutorialspoint.com/python3/python_files_io.htm 3/11
17.01.2023 17:15 Python 3 - Files I/O

Opens a file for appending. The file pointer is at the end of the file if the file exists. That is,
the file is in the append mode. If the file does not exist, it creates a new file for writing.

10
ab

Opens a file for appending in binary format. The file pointer is at the end of the file if the
file exists. That is, the file is in the append mode. If the file does not exist, it creates a new
file for writing.

11
a+

Opens a file for both appending and reading. The file pointer is at the end of the file if the
file exists. The file opens in the append mode. If the file does not exist, it creates a new
file for reading and writing.

12
ab+

Opens a file for both appending and reading in binary format. The file pointer is at the end
of the file if the file exists. The file opens in the append mode. If the file does not exist, it
creates a new file for reading and writing.

The file Object Attributes


Once a file is opened and you have one file object, you can get various information related to that
file.

Here is a list of all the attributes related to a file object −

Sr.No. Attribute & Description

1
file.closed

Returns true if file is closed, false otherwise.

2
file.mode

Returns access mode with which file was opened.

3
file.name

Returns name of the file.

Note − softspace attribute is not supported in Python 3.x

Example
https://www.tutorialspoint.com/python3/python_files_io.htm 4/11
17.01.2023 17:15 Python 3 - Files I/O

 Live Demo
#!/usr/bin/python3

# 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)
fo.close()

This produces the following result −

Name of the file: foo.txt


Closed or not : False
Opening mode : wb

The close() Method


The close() method of a file object flushes any unwritten information and closes the file object, after
which no more writing can be done.

Python automatically closes a file when the reference object of a file is reassigned to another file. It
is a good practice to use the close() method to close a file.

Syntax
fileObject.close();

Example
 Live Demo
#!/usr/bin/python3

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

# Close opened file


fo.close()

This produces the following result −

Name of the file: foo.txt

Reading and Writing Files


The file object provides a set of access methods to make our lives easier. We would see how to use
read() and write() methods to read and write files.
https://www.tutorialspoint.com/python3/python_files_io.htm 5/11
17.01.2023 17:15 Python 3 - Files I/O

The write() Method


The write() method writes any string to an open file. It is important to note that Python strings can
have binary data and not just text.

The write() method does not add a newline character ('\n') to the end of the string −

Syntax
fileObject.write(string);

Here, passed parameter is the content to be written into the opened file.

Example
#!/usr/bin/python3

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

# Close opend file


fo.close()

The above method would create foo.txt file and would write given content in that file and finally it
would close that file. If you would open this file, it would have the following content −

Python is a great language.


Yeah its great!!

The read() Method


The read() method reads a string from an open file. It is important to note that Python strings can
have binary data. apart from text data.

Syntax
fileObject.read([count]);

Here, passed parameter is the number of bytes to be read from the opened file. This method starts
reading from the beginning of the file and if count is missing, then it tries to read as much as
possible, maybe until the end of file.

Example
Let us take a file foo.txt, which we created above.

#!/usr/bin/python3

https://www.tutorialspoint.com/python3/python_files_io.htm 6/11
17.01.2023 17:15 Python 3 - Files I/O

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

# Close opened file


fo.close()

This produces the following result −

Read String is : Python is

File Positions
The tell() method tells you the current position within the file; in other words, the next read or write
will occur at that many bytes from the beginning of the file.

The seek(offset[, from]) method changes the current file position. The offset argument indicates the
number of bytes to be moved. The from argument specifies the reference position from where the
bytes are to be moved.

If from is set to 0, the beginning of the file is used as the reference position. If it is set to 1, the
current position is used as the reference position. If it is set to 2 then the end of the file would be
taken as the reference position.

Example
Let us take a file foo.txt, which we created above.

#!/usr/bin/python3

# 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 opened file


fo.close()

https://www.tutorialspoint.com/python3/python_files_io.htm 7/11
17.01.2023 17:15 Python 3 - Files I/O

This produces the following result −

Read String is : Python is


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

Renaming and Deleting Files


Python os module provides methods that help you perform file-processing operations, such as
renaming and deleting files.

To use this module, you need to import it first and then you can call any related functions.

The rename() Method


The rename() method takes two arguments, the current filename and the new filename.

Syntax
os.rename(current_file_name, new_file_name)

Example
Following is an example to rename an existing file test1.txt −

#!/usr/bin/python3
import os

# Rename a file from test1.txt to test2.txt


os.rename( "test1.txt", "test2.txt" )

The remove() Method


You can use the remove() method to delete files by supplying the name of the file to be deleted as
the argument.

Syntax
os.remove(file_name)

Example
Following is an example to delete an existing file test2.txt −

#!/usr/bin/python3
import os

https://www.tutorialspoint.com/python3/python_files_io.htm 8/11
17.01.2023 17:15 Python 3 - Files I/O

# Delete file test2.txt


os.remove("text2.txt")

Directories in Python
All files are contained within various directories, and Python has no problem handling these too. The
os module has several methods that help you create, remove, and change directories.

The mkdir() Method


You can use the mkdir() method of the os module to create directories in the current directory. You
need to supply an argument to this method, which contains the name of the directory to be created.

Syntax
os.mkdir("newdir")

Example
Following is an example to create a directory test in the current directory −

#!/usr/bin/python3
import os

# Create a directory "test"


os.mkdir("test")

The chdir() Method


You can use the chdir() method to change the current directory. The chdir() method takes an
argument, which is the name of the directory that you want to make the current directory.

Syntax
os.chdir("newdir")

Example
Following is an example to go into "/home/newdir" directory −

#!/usr/bin/python3
import os

# Changing a directory to "/home/newdir"


os.chdir("/home/newdir")

https://www.tutorialspoint.com/python3/python_files_io.htm 9/11
17.01.2023 17:15 Python 3 - Files I/O

The getcwd() Method


The getcwd() method displays the current working directory.

Syntax
os.getcwd()

Example
Following is an example to give current directory −

#!/usr/bin/python3
import os

# This would give location of the current directory


os.getcwd()

The rmdir() Method


The rmdir() method deletes the directory, which is passed as an argument in the method.

Before removing a directory, all the contents in it should be removed.

Syntax
os.rmdir('dirname')

Example
Following is an example to remove the "/tmp/test" directory. It is required to give fully qualified name
of the directory, otherwise it would search for that directory in the current directory.

#!/usr/bin/python3
import os

# This would remove "/tmp/test" directory.


os.rmdir( "/tmp/test" )

File and Directory Related Methods


There are three important sources, which provide a wide range of utility methods to handle and
manipulate files & directories on Windows and Unix operating systems. They are as follows −

File Object Methods

The file object provides functions to manipulate files.

OS Object Methods

https://www.tutorialspoint.com/python3/python_files_io.htm 10/11
17.01.2023 17:15 Python 3 - Files I/O

This provides methods to process files as well as directories.

https://www.tutorialspoint.com/python3/python_files_io.htm 11/11

You might also like