On 2011/10/28 07:38 AM, Praveen Singh wrote:
>>> splitWord('google', 2)
['go', 'og', 'le']
>>> splitWord('google', 3)
['goo', 'gle']
>>> splitWord('apple', 1)
['a', 'p', 'p', 'l', 'e']
>>> splitWord('apple', 4)
['appl', 'e']
def splitWord(word, number):
length=len(word)
list1=[]
x=0
increment=number
while number<=length+increment:
list1.append(word[x:number])
x=x+increment
number=number+increment
for d in list1:
if d=='':
list1.remove('')
return list1
I am getting the desired output and this code is working fine..but i think it
is quite bulky for this small operation.
qus.1-- can you guys suggest me some better solution??
qus 2-- i know writing just a piece of code is not going to help me. i have to
write efficient code.i want to know how to calculate execution time of my code
and
can you guys suggest me some links so that i can learn how to find
complexity of code??
Thanks in advance...
_______________________________________________
Tutor maillist - Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor
Below [1] is how I would write it, which is simply a re-factoring of
your code so it's cleaner and more compact. For calculating execution
time you can use the `timeit` module [2] and for more in-depth analysis
you can look at `profile` [3] and further to the bare-bones `dis` [4].
[1]
>>> def splitWord(word, number):
... x = []
... for y in xrange(0, len(word), number):
... x.append(word[y:y+number])
... return x
...
>>> splitWord('google', 1)
['g', 'o', 'o', 'g', 'l', 'e']
>>> splitWord('google', 2)
['go', 'og', 'le']
>>> splitWord('google', 3)
['goo', 'gle']
>>> splitWord('google', 4)
['goog', 'le']
>>> splitWord('google', 5)
['googl', 'e']
>>> splitWord('google', 6)
['google']
>>> splitWord('google', 7)
['google']
[2] http://www.doughellmann.com/PyMOTW/timeit/
[3] http://www.doughellmann.com/PyMOTW/profile/index.html#module-profile
[4] http://www.doughellmann.com/PyMOTW/dis/
--
Christian Witts
Python Developer
//
_______________________________________________
Tutor maillist - Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor