On 31.05.2014 11:23, Sasi - wrote:
Hi, i tried to make a code to execute the functions that i described
below. However i got a break outside the loop error and i have tried to
tab and all that but i still get the same error for line 23. I'm using
python 2.7
Hi,
as a general rule, copy paste the traceback of the actual python
exception instead of summarizing it.
In this specific case the error is obvious though (see below).
Please help me. I'm completely new to coding (just started last week)
Thank you for your time, i have pasted the code below.
## open both files
file1 = open('human_brain_proteins.csv')
file2 = open('human_plasma_proteins.csv')
#file1 = open('log1')
#file2 = open('log2')
## createdd a counter to count lines
count1 = 0
count2 = 0
## define 3 lists to be filled in later
common = list()
brain = list()
plasma = list()
## Created the lists for brain and plasma before searching for common
bioseq.
while True:
count1 += 1
s1=file1.readline().partition(',')[0]
your while loop ends here because the next line is not indented
(probably not what you intended).
if s1 and count1 > 1:
brain.append(s1)
if not s1:
break
since you are not inside the while loop anymore, there is nothing to
break from.
while True:
count2 += 1
s2=file2.readline().partition(',')[0]
if s2 and count2 > 1:
plasma.append(s2)
if not s2:
break
## Compared the lists to find out common bioseq., add the common bioseq.
into the common list,
## then remove the common bioseq. from both lists
for item1 in brain:
for item2 in plasma:
if item1 == item2:
common.append(item1)
brain.remove(item1)
plasma.remove(item2)
## closed both files
file1.close()
file2.close()
## print out the lists
print "Common biosequence:"
print common,"\n"
print "Brain specific biosequence:"
print brain,"\n"
print "Plasma specific biosequence:"
print plasma,"\n"
additional suggestion:
read about the set datatype of python and its intersection and
difference methods
(https://docs.python.org/2/library/stdtypes.html#set-types-set-frozenset).
It looks like handling your data as two sets instead of two lists should
be much more convenient.
Best,
Wolfgang
_______________________________________________
Tutor maillist - Tutor@python.org
To unsubscribe or change subscription options:
https://mail.python.org/mailman/listinfo/tutor