Velocity Reviews (http://www.velocityreviews.com/forums/index.php)
-   Python (http://www.velocityreviews.com/forums/f43-python.html)
-   -   It is fun.the result of str.lower(str()) (http://www.velocityreviews.com/forums/t355186-it-is-fun-the-result-of-str-lower-str.html)

 Sullivan WxPyQtKinter 03-07-2006 07:36 AM

It is fun.the result of str.lower(str())

Guess what would be the result of these functions:

>>>str.lower('ASFA')
>>>str.join(str(),['1','1','1'])
>>>str.join('a','b')

If you guess them correctly, please explain.

 Fredrik Lundh 03-07-2006 07:57 AM

Re: It is fun.the result of str.lower(str())

"Sullivan WxPyQtKinter" wrote:

> Guess what would be the result of these functions:
>
> >>>str.lower('ASFA')
> >>>str.join(str(),['1','1','1'])
> >>>str.join('a','b')

>
> If you guess them correctly, please explain.

as I just said, I.method() and C.method(I) are equivalent,
so that's just an odd way to write

'ASFA'.lower()
str().join(['1', '1', '1'])
'a'.join('b')

which, given that str() returns an empty string, and a string
behaves like a sequence of individual characters, is equivalent
to

'ASFA'.lower() => 'asfa'
''.join(['1', '1', '1']) => '111'
'a'.join(['b']) => 'b'

</F>

 Duncan Booth 03-07-2006 08:28 AM

Re: It is fun.the result of str.lower(str())

Sullivan WxPyQtKinter wrote:

> Guess what would be the result of these functions:
>
>>>>str.lower('ASFA')
>>>>str.join(str(),['1','1','1'])
>>>>str.join('a','b')

>
> If you guess them correctly, please explain.

I think it was because I've read the manuals.

 bruno at modulix 03-07-2006 09:23 AM

Re: It is fun.the result of str.lower(str())

Sullivan WxPyQtKinter wrote:
> Guess what would be the result of these functions:

s/functions/method calls/

>
>>>>str.lower('ASFA')

=> 'ASFA'.lower() => 'asfa'

>>>>str.join(str(),['1','1','1'])

=> ''.join(['1','1','1']) => '111'

>>>>str.join('a','b')

=> 'a'.join('b') => 'b'

>
> If you guess them correctly,

No need to guess, there's this thing named the python interactive shell,
you know... And it even has an integrated help system.

Explain what ? It's all in the fine manual.

* Klass() is a call to Klass's constructor and returns an instance of Klass.

* Klass.method(klass_instance) is the same as klass_instance.method()
* str is the builtin string class.
* without any args, the str constructor returns an empty string
* str.join() takes a sequence of strings and join'em with the target str
instance as separator

Now would you be kind enough to explain what's funny about all this ?

--
bruno desthuilliers
python -c "print '@'.join(['.'.join([w[::-1] for w in p.split('.')]) for
p in 'onurb@xiludom.gro'.split('@')])"

 Christos Georgiou 03-07-2006 10:59 AM

Re: It is fun.the result of str.lower(str())

On Tue, 07 Mar 2006 10:23:59 +0100, rumours say that bruno at modulix
<onurb@xiludom.gro> might have written:

<snip various python expressions>

>Now would you be kind enough to explain what's funny about all this ?

I would guess it's the statement: "Funny, it works!"
--
TZOTZIOY, I speak England very best.
"Dear Paul,
The Corinthians

 Tim Roberts 03-09-2006 08:09 AM

Re: It is fun.the result of str.lower(str())

"Sullivan WxPyQtKinter" <sullivanz.pku@gmail.com> wrote:
>
>Guess what would be the result of these functions:
>
>>>>str.lower('ASFA')
>>>>str.join(str(),['1','1','1'])
>>>>str.join('a','b')

>
>If you guess them correctly, please explain.

Can you tell us what you expected these to do? It might help future
questioners.
--
- Tim Roberts, timr@probo.com
Providenza & Boekelheide, Inc.

 All times are GMT. The time now is 06:54 AM.