[Tutor] Location of found item in list.

Kent Johnson kent37 at tds.net
Thu Oct 19 02:58:07 CEST 2006


Chris Hengge wrote:
> Tried your first suggestion.
> AttributeError: 'list' object has no attribute 'find'

Sorry, it's index() not find(). Strings have both but lists only have 
index()
> 
> Perhaps a better explanation...
> 
> 
> for word in paragraph:
>      if word in sentence:
>           print word + sentence
> 
> Assume that the word is only used once per paragraph.

Still not clear - the above looks like it would actually run.
> 
> I can't figure out how to tell it to print the right sentence (using 
> this example) because python does the search internally and doesn't seem 
> to have a way to return the list location where the match occurred.

There is only one sentence in the above example.

I think you want index(). If not, maybe you could show a small sample of 
the data and the result you want.
> 
> 
> On 10/18/06, *Kent Johnson* <kent37 at tds.net <mailto:kent37 at tds.net>> wrote:
> 
>     Chris Hengge wrote:
>      > Still no progress with this myself.
>      >
>      > For clarification if I didn't provide enough earlier,
>      > for item in list1:
>      >     if item in list2:
>      >          print item and list[object at location where matched
>     item] <--
>      > need this location.
> 
>     I still don't understand your question. If you want the index in list2
>     of the item that matches, use list2.find(item).
> 
>     If you want to enumerate over a list and have the list indices
>     available
>     as well as the list values, use enumerate() e.g.
>     for i, item in enumerate(list1):
>        # i is the index of item in list1
> 
>     Kent
> 
>      >
>      > On 10/18/06, *Chris Hengge* < pyro9219 at gmail.com
>     <mailto:pyro9219 at gmail.com>
>      > <mailto:pyro9219 at gmail.com <mailto:pyro9219 at gmail.com>>> wrote:
>      >
>      >     I'm looking for a way to do the following.
>      >
>      >     for item in limitedLineList:
>      >             if item in directoryList:
>      >                 print match.ljust(20) +
>     limitedLineList[count].ljust(20)
>      >     + directoryList[ count].ljust(20)
>      >             else:
>      >                 print fail.ljust(20) +
>     limitedLineList[count].ljust(20)
>      >     + directoryList[count].ljust(20)
>      >                 os.rename(pathName + directoryList[ count],
>     pathName +
>      >     limitedLineList[count])
>      >             count = count + 1
>      >
>      >     Where I have underlined, needs to be the item from the
>      >     directoryList, and I'm unable to find a way to return that.
>      >
>      >     The code is actually doing what I want correctly, (cheated a
>     test by
>      >     hand changing variables), but I need to find the directory
>     location.
>      >
>      >     Thanks.
>      >
>      >
>      >
>      >
>     ------------------------------------------------------------------------
>      >
>      > _______________________________________________
>      > Tutor maillist  -  Tutor at python.org <mailto:Tutor at python.org>
>      > http://mail.python.org/mailman/listinfo/tutor
>     <http://mail.python.org/mailman/listinfo/tutor>
> 
> 
>     _______________________________________________
>     Tutor maillist  -  Tutor at python.org <mailto:Tutor at python.org>
>     http://mail.python.org/mailman/listinfo/tutor
>     <http://mail.python.org/mailman/listinfo/tutor>
> 
> 




More information about the Tutor mailing list