Newbie to python --- why should i learn !

R

Raxit

Hi,

i was reading/learning some hello world program in python.
I think its very simillar to Java/C++/C#. What's different (except
syntax) ?

what can i do easily with python which is not easy in c++/java !?

Tnx,
Raxit
www.mykavita.com
 
S

s0suk3

Hi,

i was reading/learning some hello world program in python.
I think its very simillar to Java/C++/C#. What's different (except
syntax) ?

what can i do easily with python which is not easy in c++/java !?

Are you a newbie to Python, or to programming in general? I'll assume
you are a newbie to programming in general because of that last
question you asked. Things in Python are easier than in almost any
other programming language. Here are three Hello World programs:

--------------C++---------------------
#include <iostream.h>

main()
{
cout << "Hello World!";
return 0;
}
--------------------------------------

-------------Java---------------------
class HW {
public static void main(String args[]) {
System.out.println("Hello World!");
}
}
--------------------------------------

------------Python--------------------
print "Hello World!"
--------------------------------------

--------------C#----------------------
<I have no idea!>
--------------------------------------

I think you can clearly see which one is easiest. Of course, that
doesn't mean that the "easiest" language is always the "best"
language, although it is a strong point. But ease of use is just a one-
in-a-million characteristic of Python. If you're a total beginner, I'd
recommend you learning the one that attracts you the most.
 
P

pistacchio

(e-mail address removed) ha scritto:
Hi,

i was reading/learning some hello world program in python.
I think its very simillar to Java/C++/C#. What's different (except
syntax) ?

well, it's similar in the sense that it is a programming language. So
you can say that assembly is similar to BASIC, but that both are
different from finnish, but from a programmer's point of view, they're
all rather different languages.
what can i do easily with python which is not easy in c++/java !?

generally speaking python is said to be easier to pick up for a pletora
of reasons. technically speaking, it is not, for example, strongly
typed, nor it forces you to use a programming paradigm like object
oriented programming.
This means that if you just want to see your name printed on the screen
you can simply write:

print "raxit"

and get the work done. to understand it you just have to understand some
basics like what is a string and what is a statement.

in java, for example, it would look like:

public class HelloWorld {
public static void main(String[] args) {
System.out.println("raxit");
}
}

in short, to obtain the same result (limited to this case) you have to
write 650% more code and you're forced to know what is a class, what
namespace means, what is a function (and arguments) and what are methods
and the dot notation and an array. not that you won't encounter all of
them learning python, but you're presented with all of them, all at
once, in the moment where you just want to write the simplest program.
that's why a typical java beginner's guide starts with ditto examples
and adds: "ignore everything for the moment". i hate when i have to
ignore things of a code that i'm writing!

the same applies to C# and, to a certain extend, C++ that is a much
older language and present different learning problems.
Now, what can you do with python? Virtually everything (network
programming, game programming, server side scripting). In most cases, it
would run slower than it would do with the other languages (even slower
than the slow java). You won't do drivers or kernels in python, but you
won't even code them in java or C#.
the programs you'll write will mostly run on a number of different
platform, like java programs. porting a c++ is a bit tougher. at the
moment there is project (mono) that is porting the .net platform (where
c# runs) to multiple platforms, but basically, if you write a c# program
you're programming for windows.
hope it helps
 
M

maxinbjohn

Hi Raxit,

One of the the tempting features of Python is that it is fun to code
in Python. If you are really trying to learn python, you should read
Adventures with Neko (http://gnuvision.com/books/pybook/) . It is an
introductory book on Python programming for school children by Mr.
Pramode CE.

It is fun for children (when I tried it, me too liked it) to do
programming with Neko, the cat. I am sure that it will be a fun filled
learning experience for you.

Regards,

Maxin B. John
(e-mail address removed) ha scritto:
Hi,

i was reading/learning some hello world program in python.
I think its very simillar to Java/C++/C#. What's different (except
syntax) ?

well, it's similar in the sense that it is a programming language. So
you can say that assembly is similar to BASIC, but that both are
different from finnish, but from a programmer's point of view, they're
all rather different languages.
what can i do easily with python which is not easy in c++/java !?

generally speaking python is said to be easier to pick up for a pletora
of reasons. technically speaking, it is not, for example, strongly
typed, nor it forces you to use a programming paradigm like object
oriented programming.
This means that if you just want to see your name printed on the screen
you can simply write:

print "raxit"

and get the work done. to understand it you just have to understand some
basics like what is a string and what is a statement.

in java, for example, it would look like:

public class HelloWorld {
public static void main(String[] args) {
System.out.println("raxit");
}
}

in short, to obtain the same result (limited to this case) you have to
write 650% more code and you're forced to know what is a class, what
namespace means, what is a function (and arguments) and what are methods
and the dot notation and an array. not that you won't encounter all of
them learning python, but you're presented with all of them, all at
once, in the moment where you just want to write the simplest program.
that's why a typical java beginner's guide starts with ditto examples
and adds: "ignore everything for the moment". i hate when i have to
ignore things of a code that i'm writing!

the same applies to C# and, to a certain extend, C++ that is a much
older language and present different learning problems.
Now, what can you do with python? Virtually everything (network
programming, game programming, server side scripting). In most cases, it
would run slower than it would do with the other languages (even slower
than the slow java). You won't do drivers or kernels in python, but you
won't even code them in java or C#.
the programs you'll write will mostly run on a number of different
platform, like java programs. porting a c++ is a bit tougher. at the
moment there is project (mono) that is porting the .net platform (where
c# runs) to multiple platforms, but basically, if you write a c# program
you're programming for windows.
hope it helps


 
C

cokofreedom

C#

using System;
namespace HelloWorld
{
Class HelloWorld
{
static void Main(String[] args)
{
Console.WriteLine("Hello World");
}
}
}
 
K

Krishnakant Mane

hello,
I have programmed co insidentally in all the 3 languages.
so out of my experience of 10 + years, I got my personal share of
reasons to prefer python over the other 2 namely c++ and java.
firstly as every one has already explained, python is easy, fun to
learn and can do many things much productively for programmers
compared to c++ and java.
and c# is no better in that.
besides, now a days python has become much much faster in some cases
faster than java.
compare pygtk vs java swing.
python has huge amount of libraries/ modules which are as easy to use
as the language itself.
the syntax difference mentioned in the first email on this thread
makes a huge difference when the code becomes complex and the number
of lines increase.
so there are a lot of reasons to prefer python over java.
for the question "what can I do in python easier than other languages
" is not a question to be answered because it all depends on how one
associates the problem space with the language space in which the
programmer wishes to express the solution.
there will be people who will say "java is much better choice for
large scale programmes " but people like myself will always question
that.
happy hacking.
Krishnakant.
 
M

Marc 'BlackJack' Rintsch

Are you a newbie to Python, or to programming in general? I'll assume
you are a newbie to programming in general because of that last
question you asked. Things in Python are easier than in almost any
other programming language. Here are three Hello World programs:

Counterexamples for quite short "greetings" in other programming languages:

(Free)BASIC::

Print "Hello World!"

OCaml::

print_string "Hello World!" ;;

Io::

"Hello World!" linePrint

Haskell::

main = putStrLn "Hello World!"

Ciao,
Marc 'BlackJack' Rintsch
 
P

pistacchio

Marc 'BlackJack' Rintsch ha scritto:
Counterexamples for quite short "greetings" in other programming languages:

(Free)BASIC::

Print "Hello World!"

freebasic is another language i'd point out to a newbie, even if it is
not as multiplatform as python if. it has a decent community and a large
amount of libraries. it doesn't let you explore functional or, worse,
object oriented programming nor you can write server side programs with it.
The others are examples of easy "hello world" languages, but, passed
that, i think they don't have the same capabilities of python on terms
of support, kind of programs you can write and even overall complexity
(haskell forces you to functional programming, io is really a minor
language, ocalm forces you to di OOP and, if writing hello world is
simple, on the other hand ir may have lines of code that read like:

| [] -> []

and that negatively compesate the easy way you can write "hello world"
 
M

Marc 'BlackJack' Rintsch

Marc 'BlackJack' Rintsch ha scritto:

freebasic is another language i'd point out to a newbie, even if it is
not as multiplatform as python if. it has a decent community and a large
amount of libraries. it doesn't let you explore functional or, worse,
object oriented programming nor you can write server side programs with
it.

OOP support is under development and why can't you write "server side
programs" in it? CGI is possible.
The others are examples of easy "hello world" languages, but, passed
that, i think they don't have the same capabilities of python on terms
of support, kind of programs you can write and even overall complexity
(haskell forces you to functional programming, io is really a minor
language, ocalm forces you to di OOP and, if writing hello world is
simple, on the other hand ir may have lines of code that read like:

| [] -> []

Okay, Haskell's pure functional approach feels somewhat "weird".

Io is a minor language but a quite nice one IMHO. Simple syntax and
relatively simple semantics but very powerful.

OCaml doesn't enforce OOP. It's some kind of "mirror" of Python. Python
is an OOP language with support for functional programming, and OCaml is a
functional language with support for OOP.

The biggest pro for Python among the easy and clear syntax languages is
the standard library and the amount of third party modules.

Ciao,
Marc 'BlackJack' Rintsch
 
G

Gary Herron

Hi,

i was reading/learning some hello world program in python.
I think its very simillar to Java/C++/C#. What's different (except
syntax) ?

what can i do easily with python which is not easy in c++/java !?
With Python, you can program with a smile on your face.

(Truly, when I found Python, programming became fun again.)

Gary Herron
 
A

Arnaud Delobelle

pistacchio said:
ocalm forces you to di OOP

Ocaml *allows* you to do OOP. It's very much an optional feature of
the language, just like for Python.
 
B

Bruno Desthuilliers

(e-mail address removed) a écrit :
Hi,

i was reading/learning some hello world program in python.
I think its very simillar to Java/C++/C#.


Err... You saw a Python helloworld and a Java helloworld and you found
them "very similar" ???
What's different (except
syntax) ?

dynamism (and not only wrt/ the type system), higher order functions,
closures, lazy evaluation... and fun.
what can i do easily with python which is not easy in c++/java !?

Enjoy writing a working app focusing on the problem to solve instead of
wasting time writing boilerplate code and going thru hoops just to
satisfy the compiler.
 
B

Bruno Desthuilliers

pistacchio a écrit :
(snip)
Technically speaking, it (Python) is not, for example, strongly
typed,

You're confusing "strong" typing with static typing. Somewhat orthogonal
issues.
 
H

hdante

Hi,

i was reading/learning some hello world program in python.
I think its very simillar to Java/C++/C#. What's different (except
syntax) ?

All the languages have similar "power", in a theoretical sense. If
you can solve a problem with one, most of the time you'll be able to
solve it with the other. So we could say that the languages are
"equal".

However, in practice, the syntax matters a lot. For example, they
will influence on the maintainability and the performance of your
application.
what can i do easily with python which is not easy in c++/java !?

Pretty much everything. Python syntax is minimalist, so it requires
much less code. There are many examples in Wikipedia, for example:

http://en.wikipedia.org/wiki/User_datagram_protocol#Sample_code_.28Python.29
http://pt.wikipedia.org/wiki/Radix_sort#C.C3.B3digo_em_Java
http://en.wikipedia.org/wiki/Observer_pattern#Python

etc.
 
A

Aahz

With Python, you can program with a smile on your face.

+1 QOTW
(Truly, when I found Python, programming became fun again.)

"Again"? Looking back over the years, after I learned Python I realized
that I never really had enjoyed programming before.
 

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,483
Members
44,903
Latest member
orderPeak8CBDGummies

Latest Threads

Top