By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
459,866 Members | 1,765 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 459,866 IT Pros & Developers. It's quick & easy.

Now what!?

P: n/a
Grrr....

I'm following A Byte of Python and into the while loops chap. I cp/paste
while.py to a file and give 777 perms. I mv while.py to while and run it (./while)
as a standalone script. I get errors.

Here is the script:

while.py

http://www.ibiblio.org/swaroopch/byt...statement.html
When I run it as.....

$ python while

......it works perfect. But, if I run it simply as.....

$ ./while

......I get this:

$ ./while
number: illegal number: =
../while: line 6: running: command not found
../while: line 9: syntax error near unexpected token ('
../while: line 9: guess = int(raw_input('Enter an integer : '))'

Why does it work one way and not the other. If I run the simple hello world
script the same way ($ ./helloworld) and it works fine. Same shebang, same
dir, same permission, etc. I even meticulously indented everything
perfectly by hand. What am I missing?

BTW, anyone know a better cli news client/editor combo than slrn/jed (don't
even think vi!)? When I cp/past code (or most anything else) to jed, all
the lines become stair-stepped. This is no biggie for a most stuff, but for
idented code, it's unacceptable.

nb

Jun 27 '08 #1
Share this Question
Share on Google+
13 Replies


P: n/a
notbob schrieb:
Grrr....

I'm following A Byte of Python and into the while loops chap. I cp/paste
while.py to a file and give 777 perms. I mv while.py to while and run it (./while)
as a standalone script. I get errors.

Here is the script:

while.py

http://www.ibiblio.org/swaroopch/byt...statement.html
When I run it as.....

$ python while

.....it works perfect. But, if I run it simply as.....

$ ./while

.....I get this:

$ ./while
number: illegal number: =
./while: line 6: running: command not found
./while: line 9: syntax error near unexpected token ('
./while: line 9: guess = int(raw_input('Enter an integer : '))'

Why does it work one way and not the other. If I run the simple hello world
script the same way ($ ./helloworld) and it works fine. Same shebang, same
dir, same permission, etc. I even meticulously indented everything
perfectly by hand. What am I missing?
I'm pretty sure you misse the correct shebang - the shell tries to
execute your script as shell-script, instead of invoking the interpreter.

Diez
Jun 27 '08 #2

P: n/a
Diez B. Roggisch escribiˇ:
notbob schrieb:
>Grrr....

I'm following A Byte of Python and into the while loops chap. I cp/paste
while.py to a file and give 777 perms. I mv while.py to while and run
it (./while)
as a standalone script. I get errors.

Here is the script:

while.py

http://www.ibiblio.org/swaroopch/byt...statement.html
When I run it as.....

$ python while

.....it works perfect. But, if I run it simply as.....

$ ./while

.....I get this:

$ ./while
number: illegal number: =
./while: line 6: running: command not found
./while: line 9: syntax error near unexpected token ('
./while: line 9: guess = int(raw_input('Enter an integer : '))'

Why does it work one way and not the other. If I run the simple hello
world
script the same way ($ ./helloworld) and it works fine. Same shebang,
same
dir, same permission, etc. I even meticulously indented everything
perfectly by hand. What am I missing?

I'm pretty sure you misse the correct shebang - the shell tries to
execute your script as shell-script, instead of invoking the interpreter.

Diez
--
http://mail.python.org/mailman/listinfo/python-list
Add #!/path/to/bin/python on the first line of your script.

Also should work with:
#!/usr/bin/env python
Jun 27 '08 #3

P: n/a
On 2008-05-10, Diez B. Roggisch <de***@nospam.web.dewrote:
notbob schrieb:
>script the same way ($ ./helloworld) and it works fine. Same shebang, same
dir, same permission, etc.

I'm pretty sure you misse the correct shebang -
Sorry. Both exactly the same. I checked 5 times.

helloworld shebang: #!/usr/bin/python
while shebang: #!/usr/bin/python

(above yanked from respective scripts)

nb
Jun 27 '08 #4

P: n/a
On 10 ═┴╩, 21:22, notbob <not...@nothome.comwrote:
On 2008-05-10, Diez B. Roggisch <de...@nospam.web.dewrote:
notbob schrieb:
script the same way ($ ./helloworld) and it works fine. Same shebang, same
dir, same permission, etc.
I'm pretty sure you misse the correct shebang -

Sorry. Both exactly the same. I checked 5 times.

helloworld shebang: #!/usr/bin/python
while shebang: #!/usr/bin/python

(above yanked from respective scripts)

nb
Shebang is certainly broken, possible causes:
1. Wrong line endings (should be \n)
2. Whitespace before the shebang

-- Ivan
Jun 27 '08 #5

P: n/a
On 2008-05-10, Ivan Illarionov <iv*************@gmail.comwrote:
Shebang is certainly broken, possible causes:
1. Wrong line endings (should be \n)
Nope. Not it.
2. Whitespace before the shebang
BINGO! ....we have a winner. ;)

I thought for sure that was not correct. No white space before the
sheba.... Wait a minute! Howzabout a blank line above the shebang? D0H!!

These are the minute details that bedevil the poor noob. I've read dozens
of tutorials on different prog langs and have never read a single thing on
white space or blank lines preceding a shebang. Till now. I always get
frustrated and give up on learning programming, not really caring much for
coding, anyway. But, dammit, I'm gonna stick with it this time. I'll learn
python if it kills me! ....that is, if you folks can stand all my dumb
questinons. ;)

Thank you, Ivan, and other repondents.

nb ....back to while loops

Jun 27 '08 #6

P: n/a
On 2008-05-10, notbob <no****@nothome.comwrote:
BTW, anyone know a better cli news client/editor combo than slrn/jed (don't
even think vi!)? When I cp/past code (or most anything else) to jed, all
the lines become stair-stepped. This is no biggie for a most stuff, but for
idented code, it's unacceptable.
Whoo-hoo! I just got emacs config'd to do python. Let's see how that works.

nb
Jun 27 '08 #7

P: n/a
On 2008-05-10, Dennis Lee Bieber <wl*****@ix.netcom.comwrote:
>These are the minute details that bedevil the poor noob. I've
read dozens of tutorials on different prog langs and have
never read a single thing on white space or blank lines
preceding a shebang. Till now. I always get

Well... The "shebang" line is OS and shell specific
The "#!" is sort of a holdover from the "magic number" used
back in the day on Unix systems. Traditionally, the type of an
executable file on Unix systems was determined by a "magic
number" that was read from the first two bytes of a file:

http://en.wikipedia.org/wiki/Magic_number_(programming)

Back then there was a text file somewhere that listed the
various 16-bit values and what they meant. The "file" program
used that list to guess what a file was. It's gotten
considerably more complex since then, and the "magic" file has
syntax to specify fairly large/complex patterns that are used
to determine file types. If you're curious, there's probably a
"magic" file somewhere on your system. On Gentoo it's at
/usr/share/misc/file/magic,

On a Linux system (and I presume on other Unixes), the kernel
itself (if built with the proper options) knows know how start
a "script" file that starts with the characters "#!". When the
kernel is told to execute a file whose first two bytes are "#!"
(0x32,0x21), it knows to read the newline terminated path of an
executable starting at the byte following the "!" (the third
byte in the file). The kernel then executes that file,
appending the name of the original "script" file to the argv
list.

--
Grant Edwards grante Yow! My mind is making
at ashtrays in Dayton ...
visi.com
Jun 27 '08 #8

P: n/a
On 2008-05-10, Dennis Lee Bieber <wl*****@ix.netcom.comwrote:
So... in short, you'd need to have been reading a tutorial specific
to "shell" scripting...
I have been. I'm also trying to learn bash shell scripting, not to mention
sed/awk, php, etc. I should have started this a long time ago, but I'm lazy
and, like I said, I'm not particularly fond of coding. Yes, I have learned
basic C and basic , but never beyond intro. Now, I'm doing it because I'm a
geezer and I figure my brain needs more exercise then just blabbing on
usenet. Besides, I've been cruising while using linux for too long and have
remained low end intermediate. Time to get serious. Pass the cheat sheets!

nb
Jun 27 '08 #9

P: n/a
On May 10, 8:22*pm, notbob <not...@nothome.comwrote:
On 2008-05-10, Dennis Lee Bieber <wlfr...@ix.netcom.comwrote:
* *So... in short, you'd need to have been reading a tutorial specific
to "shell" scripting...

I have been. *I'm also trying to learn bash shell scripting, not to mention
sed/awk, php, etc. *I should have started this a long time ago, but I'm lazy
Throw all of this away and learn just python. That will be much
simpler for you.
and, like I said, I'm not particularly fond of coding. *Yes, I have learned
basic C and basic , but never beyond intro. *Now, I'm doing it because I'm a
Forget basic and learn python. Later you can learn C.
geezer and I figure my brain needs more exercise then just blabbing on
usenet. *Besides, I've been cruising while using linux for too long and have
remained low end intermediate. *Time to get serious. *Pass the cheat sheets!

nb
Jun 27 '08 #10

P: n/a
On 2008-05-11, Dennis Lee Bieber <wl*****@ix.netcom.comwrote:
on the Amiga, it could be any of those applications).
ahhh.... the Amiga, the demise of which was one of the great calamaties of
our cyber time. (sniff)

nb
Jun 27 '08 #11

P: n/a
On May 10, 10:05*pm, hdante <hda...@gmail.comwrote:
On May 10, 8:22*pm, notbob <not...@nothome.comwrote:
On 2008-05-10, Dennis Lee Bieber <wlfr...@ix.netcom.comwrote:
* *So... in short, you'd need to have been reading a tutorial specific
to "shell" scripting...
I have been. *I'm also trying to learn bash shell scripting, not to mention
sed/awk, php, etc. *I should have started this a long time ago, but I'm lazy

*Throw all of this away and learn just python. That will be much
simpler for you.
and, like I said, I'm not particularly fond of coding. *Yes, I have learned
basic C and basic , but never beyond intro. *Now, I'm doing it becauseI'm a

*Forget basic and learn python. Later you can learn C.
Fiscally speaking, C and Python may well be just as economical. So
long as you've spent time learning a computer language, hold you can
get your needs met*.

* Even if money isn't a measure of value, a true measure of value, or
measure of true value.

In light of the actual writing of Python, if you make it, like to.

In sight of competitors, argue that Python is at least a locus, node,
nodepoint, or to-central of something about free and software.

Hold that Python is an end in itself, and/or that writing it is, and/
or is writing an implementation.

(Can you talk about languages like they're people?)

Distinguish further between languages, programs, libraries, and the
standards.

Then evaluate Python for population assortment characteristics, such
as population, overcrowding, undercrowding, and various sense
criteria.

In the Windows world, we are asking, how many keystrokes per thought,
mouse motions per error, and cross.

If your boss sucks but Python rules, it remains unclear that either is
any better. It is not clear that Python has a will, or computers
have.

If they have minds, whether absent will or not, perhaps it wouldn't
pay to like it too much. What diversity can you find on a newsgroup?
>

geezer and I figure my brain needs more exercise then just blabbing on
usenet. *Besides, I've been cruising while using linux for too long and have
remained low end intermediate. *Time to get serious. *Pass the cheatsheets!
nb- Hide quoted text -

- Show quoted text -
Jun 27 '08 #12

P: n/a
I don't know the context of the discussion, since I just joined the
list, but:
On May 10, 2008, at 11:05 PM, hdante wrote:
On May 10, 8:22 pm, notbob <not...@nothome.comwrote:
>On 2008-05-10, Dennis Lee Bieber <wlfr...@ix.netcom.comwrote:
>> So... in short, you'd need to have been reading a tutorial
specific
to "shell" scripting...

I have been. I'm also trying to learn bash shell scripting, not to
mention
sed/awk, php, etc. I should have started this a long time ago, but
I'm lazy

Throw all of this away and learn just python. That will be much
simpler for you.
Ummm, if you are working with Unix and Unix-like systems, you should
know shell scripting. Work through that first and then when you find
that you can't get things done with a shell script, go with Python (or
failing that, Perl :) ).

- Rilindo
Jun 27 '08 #13

P: n/a
notbob wrote:
frustrated and give up on learning programming, not really caring much for
coding, anyway. But, dammit, I'm gonna stick with it this time. I'll learn
python if it kills me!
No, it won't kill you but make you stronger ;)
Jun 27 '08 #14

This discussion thread is closed

Replies have been disabled for this discussion.