New to Python; what about #include, extern and function prototypes

B

Bo Jacobsen

I'm new to Python, and it looks as if there is no
C like "#include and extern" or function protypes. No shell like ".
.../filename"
is this correct ?.

Is there any way to implement them ?

PS: For me, "import module" is no replacement for include.



Bo Jacobsen
 
H

Hamilcar Barca

I'm new to Python, and it looks as if there is no
C like "#include and extern" or function protypes.

That's right.
No shell like ".
../filename"

I don't understand this part.
Is there any way to implement them ?

I don't know. I've been a C programmer for almost exactly 20 years: Neither
"extern" nor function prototypes are necessary in Python.
PS: For me, "import module" is no replacement for include.

"import" and "#include" do not have exactly the same meaning but they
accomplish more or less the same result.

What is it you're trying to do that requires these C/C++ features?
 
B

Bo Jacobsen

That's right.


I don't understand this part.


I don't know. I've been a C programmer for almost exactly 20 years: Neither
"extern" nor function prototypes are necessary in Python.


"import" and "#include" do not have exactly the same meaning but they
accomplish more or less the same result.

What is it you're trying to do that requires these C/C++ features?

I'm looking for a future replacement for bash and I have a number of large
shell scripts that need to be translated to a language that are better at
handling
more complicated datatypes.
I'm been looking at perl and python, and I really like the strict syntax,
handling
of function parameters etc. Without include and function prototyping though,
will probably have the effect that large source files, with a lot of
function
definitions at the top, will be generated. Not god.

Perl on the other hand has it all, including very productive features as
built-in
regular expressions, file scanning etc. but I dont like all the
type-characters and
the "lose" syntax.


.. ./filename
Is the shell "include/execute" command.

Bo
 
I

Irmen de Jong

Bo said:
I'm been looking at perl and python, and I really like the strict syntax,
handling
of function parameters etc. Without include and function prototyping though,
will probably have the effect that large source files, with a lot of
function
definitions at the top, will be generated. Not god.

Why do you think this is so?

Have a look at any Python example sourcecode (for that matter,
at some of the .py files from Python's standard library; for instance
cgi.py) and you will see that Python's import mechanism is working fine.
No big source files with lots of definitions at the top.
Just import the module which contains the definitions you need...

Perl on the other hand has it all, including very productive features as
built-in
regular expressions, file scanning etc.

Python has the re/sre module for regular expression stuff.
File scanning is often done like this:
for line in open("myfile.txt"):
process(line)
. ./filename
Is the shell "include/execute" command.

Python's "include" command is the import statement.
If you really want (but WHY?) to read in and directly
execute another source file, use the execfile function.

--Irmen
 
B

Bo Jacobsen

I'm been looking at perl and python, and I really like the strict
syntax,
Why do you think this is so?

Have a look at any Python example sourcecode (for that matter,
at some of the .py files from Python's standard library; for instance
cgi.py) and you will see that Python's import mechanism is working fine.
No big source files with lots of definitions at the top.
Just import the module which contains the definitions you need...



Python has the re/sre module for regular expression stuff.
File scanning is often done like this:
for line in open("myfile.txt"):
process(line)


Python's "include" command is the import statement.
If you really want (but WHY?) to read in and directly
execute another source file, use the execfile function.

--Irmen

I'm very new to Phyton (I looked at it for the first time last night), so
you must have me excused.
The "execfile" perfectly solves my worries about prototyping and
include, GREAT.
As I wrote earlier, I really like the "feeling" of the language, now I
just have to find the time to dig more into it.

By the way, is there an elegant way to read shell program output
into a variable as in bash: var=$(command1 | command2)


Bo
 
D

David M. Cook

Bo Jacobsen said:
By the way, is there an elegant way to read shell program output
into a variable as in bash: var=$(command1 | command2)

I usually use the commands module:

import commands

status, output = commands.getstatusoutput("command1 | command2")

status would be $? in bashese.

Dave Cook
 

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,744
Messages
2,569,484
Members
44,905
Latest member
Kristy_Poole

Latest Threads

Top