Python Array fromfile() Method



The Python array fromfile() method is used to append items from a file object to an array.

Syntax

Following is the syntax of Python array fromfile() method −

array_name.fromfile(f,n)

Parameters

This method accepts following parameters −

  • f : This is the file object from which items are to be appended to the array.
  • n : This is the number of items from file that need to be appended to the array.

Return Value

This method does not return any value.

Example 1

Following is the basic example of Python array fromfile() method −

#import  array module
import array as arr
#open file object for writing
f = open('my_file.txt','wb')
#write array of integers to file object
arr1=arr.array("i", [1, 2, 3, 4, 5, 6, 7, 8, 9])
print("Array in the file :",arr1 )
arr1.tofile(f)
#close file
f.close()
#open file for reading
f = open('my_file.txt','rb')
#initialize array with integer type
array_one = arr.array("i")
#initialize array with integer type
array_two = arr.array("i")
#read 3 items from file
array_one.fromfile(f,3)
print("Appended array1 :",array_one)
#Moving the cursor to the first position
f.seek(0)
#read 6 items from file
array_two.fromfile(f,6)
print("Appended array2 :",array_two)
#close file
f.close()

Output

Following is the output of the above code −

Array in the file : array('i', [1, 2, 3, 4, 5, 6, 7, 8, 9])
Appended array1 : array('i', [1, 2, 3])
Appended array2 : array('i', [1, 2, 3, 4, 5, 6])

Example 2

Lets try to append an array of unicode charater data type from a file to another array −

import array as arr
arr2=arr.array('u',['a','b','c','d'])
print("Array elements in the file :",arr2)
f=open('fromfile2.txt','wb')
arr2.tofile(f)
f.close()
arr3=arr.array('u')
f1=open("fromfile2.txt","rb")
arr3.fromfile(f1,len(arr2))
print('Array element after appending from file :',arr3)
f.close()

Output

Array elements in the file : array('u', 'abcd')
Array element after appending from file : array('u', 'abcd')

Example 3

In this method, if number of items or elements of file f has less than the n items we get EOF Error.

Here, number of file elements are five and n value mentioned is six

import array as arr
arr3=arr.array('d',[5.6,3.9,23.5,45.7,12.7])
print("Length of the array in the file", len(arr3))
print("Array elements in the file :",arr3)
f=open('fromfile2.txt','wb')
arr3.tofile(f)
f.close()
arr4=arr.array('d')
f1=open("fromfile2.txt","rb")
arr4.fromfile(f1,6)
print('Array element after appending from file :',arr4)
f.close()

Output

Length of the array in the file 5
Array elements in the file : array('d', [5.6, 3.9, 23.5, 45.7, 12.7])
Traceback (most recent call last):
  File "E:\pgms\Arraymethods prgs\fromfile1.py", line 63, in 
    arr4.fromfile(f1,6)
EOFError: read() didn't return enough bytes
python_array_methods.htm
Advertisements
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy