Python crashed when importing SOAPpy,printing out 'usage:copy source destination'

J

jiang.haiyun

Hello all,
when i import SOAPpy, the python crashed and print out 'usage:copy
source destination'.
As follows:
############################
haiyun# python
Python 2.4.1 (#2, Mar 28 2006, 21:00:14)
[GCC 3.4.2 [FreeBSD] 20040728] on freebsd5
Type "help", "copyright", "credits" or "license" for more information.usage:copy source destination
#############################
Then i checked and found that in my pwd there is a .py file,
i guess it is this file caused the problem.
the file content is as follows:
############################
haiyun# cat a.py
#!env python
usage="usage:copy source destination\n"
import sys
len=len(sys.argv)
if len!=3 :
print usage
sys.exit()
################end#########

So the python will crash when i import SOAPpy if working in a dir
containing this .py file,
and if rename the .py file to another type , say .txt, the problem
dispeared.

Who can tell me what's the problem.
 
F

Fredrik Lundh

when i import SOAPpy, the python crashed and print out 'usage:copy
source destination'.
As follows:
############################
haiyun# python
Python 2.4.1 (#2, Mar 28 2006, 21:00:14)
[GCC 3.4.2 [FreeBSD] 20040728] on freebsd5
Type "help", "copyright", "credits" or "license" for more information.usage:copy source destination
#############################
Then i checked and found that in my pwd there is a .py file,
i guess it is this file caused the problem.
the file content is as follows:
############################
haiyun# cat a.py
#!env python
usage="usage:copy source destination\n"
import sys
len=len(sys.argv)
if len!=3 :
print usage
sys.exit()
################end#########

So the python will crash when i import SOAPpy if working in a dir
containing this .py file,
and if rename the .py file to another type , say .txt, the problem
dispeared.

Who can tell me what's the problem.

this is how things work: Python doesn't distinguish between script
files and module files; a module is simply a script that defines a
bunch of things.

if you want to create something that can work both as a script and a
module, see:

http://effbot.org/pyfaq/tutor-what-is-if-name-main-for.htm

</F>
 
J

jiang.haiyun

Fredrik said:
this is how things work: Python doesn't distinguish between script
files and module files; a module is simply a script that defines a
bunch of things.

if you want to create something that can work both as a script and a
module, see:

http://effbot.org/pyfaq/tutor-what-is-if-name-main-for.htm

</F>

I still can't understand it. If i rename the 'copy.py' to 'a.py',
there will be no problem.
As follows:
###########################
haiyun# ls
copy.py
haiyun# python
Python 2.4.1 (#2, Mar 28 2006, 21:00:14)
[GCC 3.4.2 [FreeBSD] 20040728] on freebsd5
Type "help", "copyright", "credits" or "license" for more information.usage:copy source destination

haiyun# ls
copy.py copy.pyc
##########################

it seems that the copy.py in the PWD has been interpreted as the
SOAPpy module imported.
So i rename the copy.py to a.py.
As follows:
########################
haiyun# ls
copy.py copy.pyc
haiyun# rm copy.pyc
haiyun# mv copy.py a.py
haiyun# ls
a.py
haiyun# python
Python 2.4.1 (#2, Mar 28 2006, 21:00:14)
[GCC 3.4.2 [FreeBSD] 20040728] on freebsd5
Type "help", "copyright", "credits" or "license" for more information.#########################

Everything is all right!
The content of the copy.py(a.py) is:
#########################
haiyun# cat a.py
#!env python
usage="usage:copy source destination\n"
import sys
len=len(sys.argv)
if len!=3 :
print usage
sys.exit()
#########################

I guess something in the SOAPpy module conflects with the copy.py in
the PWD.
So what it happened?
 
F

Fredrik Lundh

I still can't understand it. If i rename the 'copy.py' to 'a.py',
there will be no problem.

hint: when it works, try typing the following into the interpreter:

</F>
 
J

jiang.haiyun

Fredrik said:
hint: when it works, try typing the following into the interpreter:


</F>

I know, the copy module is imported by the SOAPpy module.
But SOAPpy imported an un-proper one from the CWD.

Thank you very much :)
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,764
Messages
2,569,567
Members
45,041
Latest member
RomeoFarnh

Latest Threads

Top