Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #37556 > unrolled thread

Re: using split for a string : error

Started by"Tobias M." <tm@tobix.eu>
First post2013-01-24 11:55 +0100
Last post2013-01-24 11:55 +0100
Articles 1 — 1 participant

Back to article view | Back to comp.lang.python

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: using split for a string : error "Tobias M." <tm@tobix.eu> - 2013-01-24 11:55 +0100

#37556 — Re: using split for a string : error

From"Tobias M." <tm@tobix.eu>
Date2013-01-24 11:55 +0100
SubjectRe: using split for a string : error
Message-ID<mailman.956.1359024926.2939.python-list@python.org>

[Multipart message — attachments visible in raw view] — view raw

Hi,

do a "print sp" after the split and you might see that the strings don't 
look as you expected. There might be leading or trailing whitespaces in 
the splitted strings and in sp[10] there probably is a line break "\n" 
at the end.
To remove those unwanted characters you could use the strip() function.

So your code could be:

if sp[9].strip() == sp[10].strip():
     print "Same class"
else:
     print "Different class"

At least this works for me when I tried it...

Am 24.01.2013 11:37, schrieb inshu chauhan:
> Here I have a code which basically reads a csv file, tries to compare 
> the last 2 items in each line of the file.
>
> f = open(r"Z:\modules\Feature_Vectors_300_Pclass.arff")
> for l in f:
>     sp = l.split(",")
>     if len(sp) != 11:
>         print >> of, l,
>
>     else:
>         #print sp[9], sp[10]
>         if sp[9] == sp[10]:
>             print " Same class"
>         else :
>             print "Different class"
>
> f.close()
>
> For me I think the programme is logically correct, but its giving me 
> results which are strange.
> It is  Printing " Different Class"  even when sp[9] is equal to sp[10] 
> and "Same class" when sp[9] is not equal to sp[10]. and sp[9] and 
> sp[10] are simple integers like 3, 3, 4 ,4.
>
> I have a little understanding why the programme is behaving like this ?
>
>

[toc] | [standalone]


Back to top | Article view | comp.lang.python


csiph-web