>>> import string
>>> s = 'happy cat'
>>> string.find(s, 'cat')
6
and
>>> s = 'happy cat'
>>> s.find('cat')
6
In the above 2 pieces of code, i have the following doubts.
- Why is the 2nd code working without import the string module?
- Is there any performance improvement in using one over the other?
Thanks,
Vinay
The functions defined in
stringmodule that are nowadays methods ofstrwere deprecated in Python 2.4 and should not be used at all, though they were retained in later Python 2 versions for backward-compatibility. They were removed in Python 3.0.Because it’s a method of
strtype.Well,
string.find(x, y)callsx.find(y), but the performance doesn’t matter here (see first sentence).