Retrieve A Data In A File


Recommended Posts

read = open('sample.txt', 'r')

a = read.readlines()

arr = []

for ruleline in a:

for ruledata in ruleline[2:9]:

arr.append(ruledata)

print arr,

what is wrong with this code? it prints ['5'] ['5', '5'] ['5', '5', '1'] ['5', '5', '1', '0'] ['5', '5', '1', '0', '/'] ['5', '5', '1', '0', '/', '2'] ['5', '5', '1', '0', '/', '2', ' '] .....

what I want is 5510/2, not seperating them...

pls guide me.

Edited by davalend
Link to post
Share on other sites

as to the method Hai-Etlik mentioned

>>> test = "1 5510/2 if then Date = 03/17/1999 03/18/1999"
>>> test_splitted = test.split()
>>> print test_splitted
['1', '5510/2', 'if', 'then', 'Date', '=', '03/17/1999', '03/18/1999']
>>> print test_splitted[1]
5510/2

or as one line

"1 5510/2 if then Date = 03/17/1999 03/18/1999".split()[1]

Edited by shanenin
Link to post
Share on other sites

read = open('rules.txt', 'r')

a = read.readlines()

arr = []

for ruleline in a:

arr.append(ruleline.split()[1])

print arr

-----------------------------------

['5510/2']

['5510/2', '2490/1']

['5510/2', '2490/1', '4728/2']

['5510/2', '2490/1', '4728/2', '1940/1']

['5510/2', '2490/1', '4728/2', '1940/1', '1940/1']

['5510/2', '2490/1', '4728/2', '1940/1', '1940/1', '5510/3']

---------------------------------------------------------------

it keeps repeating. how come?

Link to post
Share on other sites

I am not sure exactly what you are trying to do. I think the problem is you have your print statement in the loop. So everytime it loops it is printing. Just move you print statement past the loop

read = open('rules.txt', 'r')
a = read.readlines()

arr = []
for ruleline in a:
arr.append(ruleline.split()[1])

print arr

Link to post
Share on other sites

since python is sensitive to whitespace(indentation), it would help if you placed your code in tags. It would make your code easier to read on this forum, for example:

[c0de]

for in in test:

print f

while True:

print g

[/c0de]

in my example I used "0" in place of "o". make sure you just use "o"

Edited by shanenin
Link to post
Share on other sites
hmm....

because i am using this number in "a" in a formula.

for example: x = a * 100

so x will return me a list of difference answer with difference input of "a"

get what i mean?

No, I'm afraid it made no sense whatsoever.

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...