I have a bunch of functions I've collected in one script, "mycalc.py", which I use as a module, "mycalc". The last one I wrote, cmpSeq() is as follows:
===========begin code============== def cmpSeq(seq1, seq2): """ find first index at which two sequences differ """ if seq1 == seq2: print "Sequences are identical, and of length %d" % len(seq1) return None if len(seq1) >= len(seq2): shorterOrEqualSequence = seq2 else: shorterOrEqualSequence = seq1 for index in range(len(shorterOrEqualSequence)): if seq1[index] != seq2[index]: print "sequences first differ at index", index print "seq1[%d] = %s" % (index, seq1[index]) print "seq2[%d] = %s" % (index, seq2[index]) break if index == len(shorterOrEqualSequence)-1: print "sequences are identical thru end of shorter sequence at index", index print "len(seq1) =", len(seq1) print "len(seq2) =", len(seq2) ========end code for cmpSeq()========= In a script, cmpSeq() works fine. For example followed by a = "qwertys" b = "qxerty" cmpSeq(a,b) The output is: sequences first differ at index 1 seq1[1] = w seq2[1] = x len(seq1) = 7 len(seq2) = 6 cmpSeq() is now copy-pasted into mycalc.py, but is not useable there: #testof_cmpSeq.py import mycalc a = "qwerty" b = "qxerty" mycalc.cmpSeq(a,b) which produces: Traceback (most recent call last): File "C:\Python24\MyScripts\testof_cmpSeq.py", line 1, in -toplevel- from mycalc import cmpSeq ImportError: cannot import name cmpSeq However, other functions in mycalc work fine. For example: #testof_print_hms import mycalc seconds = 87658 mycalc.print_hms(seconds) This outputs 24 hours, 20 minutes, 58 seconds That may have been a bit long-winded; if so, I apologize. But would someone please point out why cmpSeq() can't be imported from mycalc? Thanks, Dick Moores _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor