Sunday, May 13, 2012

How to read integer from file and put in a list in Python

one of the classic practical examples in every programming language is reading a file which has multiple numbers at each line and you need to read them and put them in an array or list .

let say I have a text file containing X,Y integers like this :
5 4
6 2
4 3
3 1
3 6
1 2
2 3

and I want to read them from the file put them in a list (x,y)

Here is step by step example code in python  to read integers from file:
1- we need to open the file in read only mode
    f = open(filename,"r")

2- Initialize a list to put our numbers in it
    points=[]
3- in this part , we read every line in the file and cast it into integer ,
split() function divides the words that have a space in a line so we can read it one by one
if we our text was like
5,4
6,2
we could use line.split(',')
but in this case line.split() works for us
int(s) converts the type of elements in line into integer and put them in two different variable name x and y
and then we append x,y into points list
    for line in f:
        x, y = (int(s) for s in line.split())
        points.append((x,y))

4- in the end I close the file
   f.close()
The full code in python :
def readfromfile(filename):
    f=open(filename,"r")
    points=[]
    for line in f:
        x,y = (int(s) for s in line.split())
        points.append((x,y))
    f.close()
    return points

 here is how it looks like when you run it
>> readfromfile('case4.txt')
[(5, 4), (6, 2), (4, 3), (3, 1), (3, 6), (1, 2), (2, 3)]
Post a Comment

Related

Labels

computer (48) ubuntu (46) linux (28) tutorial (20) opinion (17) programming (14) software overview (13) terminal (12) troubleshooting (8) life (7) literature (7) poem (7) human languages (6) vim (6) bash (5) google (5) python (5) android (4) cars (4) phpBB (4) suggestion (4) tips (4) 12.04 (3) Chef (3) extension and addons (3) firefox (3) java (3) personal (3) russian (3) shell (3) windows (3) 64bit (2) Calligraphy (2) Chicago (2) Vagrant (2) apple (2) backup (2) bug (2) code (2) eclipse (2) funny (2) google chrome (2) idea (2) monitor (2) php (2) phpBB3 (2) shorter prompt (2) ssh (2) virtualbox (2) $_SERVER['REQUEST_URI'] (1) 2.7 (1) ALT+Backspace (1) AVR (1) Alt-Printscreen-K (1) AutoRotate (1) CTRL+ALT+DELETE (1) DRM (1) Debugging (1) Gimp (1) Gimp 2.8 (1) Microcontroler (1) Restart X (1) UML (1) Ventra (1) adsense (1) amazon (1) audio (1) aws (1) background process (1) battery (1) bing (1) blank (1) blogging (1) bmw (1) boot (1) business review (1) car (1) cd (1) chrome (1) comcast (1) computer kubuntu (1) conference (1) cookie (1) cron (1) database (1) date (1) display (1) domain name (1) download manager (1) dual boot (1) dual monitor (1) extensions (1) feature request (1) file (1) folder (1) freeze (1) gimp single window (1) git (1) gnome 3.10 (1) google docs (1) google plust (1) google+ (1) grep (1) icon (1) install (1) iterator (1) links (1) linu (1) linux links (1) list (1) mac os (1) media server (1) microsoft (1) moonlight (1) music (1) mysql (1) name (1) nautilus (1) netflix (1) notepad++ (1) parking (1) permission (1) philosophy (1) photo (1) prompt (1) protest (1) ps3mediaserver (1) putty (1) read from file (1) realtek (1) resolution (1) roku (1) samsung (1) scala (1) screenshot (1) security (1) selinux (1) server (1) skype (1) space (1) spam (1) spambot (1) sql (1) suspension (1) system monitor (1) tar (1) task manager (1) template design (1) th23 domain (1) thinking (1) ubuntu 13.10 (1) unity (1) vimrc (1) virtual machine (1) weblogic (1) wget (1) with space (1) xorg (1) xrand (1)