Discuss Scratch

PutneyCat
Scratcher
500+ posts

Best way to learn Python?

What's the best way to learn Python (on a Windows computer)? Grateful for any suggestions.

Background. Programming experience limited to Scratch plus a tiny bit of Visual Basic. So hazy on any technical terms and pretty ignorant about everything except basic programming (loops, variables etc). Want to learn Python with view (in long run) to experimenting with building a Python/Django website. Finding it difficult to know how to get properly started - and to learn by doing. The basics of the language seem simple enough but I don't know how to make anything that a user could actually use. I see you can use it via command prompt but that seems limited. I see you can write code using just a text editor, but that presumably doesn't give a beginner much help. I think what I probably need is an IDE or editor (?) but the choice seems bewildering. Visual Studio 2017 covers Python but (unlike Visual Basic) I can't see how you e.g. create a form with text on it. Online tutorials seem mainly to explain variables, loops etc - which is not really the bit I'm struggling with.

Last edited by PutneyCat (Nov. 5, 2017 11:17:08)

bob1171
Scratcher
100+ posts

Best way to learn Python?

did you try the default program editor in the shell?


PutneyCat
Scratcher
500+ posts

Best way to learn Python?

bob1171 wrote:

did you try the default program editor in the shell?

No - how would I find/access that? Not 100% sure what “the shell” is. I have downloaded Python 3 and can locate a bunch of Python-related stuff, but not sure what I'm looking for. If I double-click the “Python” application it takes me to command prompt.
TheUltimatum
Scratcher
1000+ posts

Best way to learn Python?

PutneyCat wrote:

bob1171 wrote:

did you try the default program editor in the shell?

No - how would I find/access that? Not 100% sure what “the shell” is. I have downloaded Python 3 and can locate a bunch of Python-related stuff, but not sure what I'm looking for. If I double-click the “Python” application it takes me to command prompt.
If you've got Windows 10 just search for “IDLE” a nice white editor will popup for you.
I recommend this tutorial from the Python docs: https://docs.python.org/3/tutorial/index.html

You'll want to use IDLE for your first couple of months. It's a great editor for beginners. If you've got the basics down, try doing things with pygame. It's a really great library.

Last edited by TheUltimatum (Nov. 5, 2017 16:19:46)

PutneyCat
Scratcher
500+ posts

Best way to learn Python?

TheUltimatum wrote:

PutneyCat wrote:

bob1171 wrote:

did you try the default program editor in the shell?

No - how would I find/access that? Not 100% sure what “the shell” is. I have downloaded Python 3 and can locate a bunch of Python-related stuff, but not sure what I'm looking for. If I double-click the “Python” application it takes me to command prompt.
If you've got Windows 10 just search for “IDLE” a nice white editor will popup for you.
I recommend this tutorial from the Python docs: https://docs.python.org/2/tutorial/index.html

You'll want to use IDLE for your first couple of months. It's a great editor for beginners. If you've got the basics down, try doing things with pygame. It's a really great library.

Thanks - l'll try that.
TheUltimatum
Scratcher
1000+ posts

Best way to learn Python?

PutneyCat wrote:

TheUltimatum wrote:

PutneyCat wrote:

bob1171 wrote:

did you try the default program editor in the shell?

No - how would I find/access that? Not 100% sure what “the shell” is. I have downloaded Python 3 and can locate a bunch of Python-related stuff, but not sure what I'm looking for. If I double-click the “Python” application it takes me to command prompt.
If you've got Windows 10 just search for “IDLE” a nice white editor will popup for you.
I recommend this tutorial from the Python docs: https://docs.python.org/2/tutorial/index.html

You'll want to use IDLE for your first couple of months. It's a great editor for beginners. If you've got the basics down, try doing things with pygame. It's a really great library.

Thanks - l'll try that.
Sorry I linked to a tutorial for python 2. Here's the one for 3:
https://docs.python.org/3/tutorial/index.html
TheAspiringHacker
Scratcher
100+ posts

Best way to learn Python?

A program doesn't have to have a graphical UI to be “professional.” Many respectable command-line programs exist, such as the GNU coreutils. However, you can use a Python library (such as tkinter) to make GUIs.

Long live Kyoto Animation!
MartinBraendli2
Scratcher
100+ posts

Best way to learn Python?

PutneyCat wrote:

Online tutorials seem mainly to explain variables, loops etc - which is not really the bit I'm struggling with.
What are you struggling with?


TigerJython (Python 2) is an easy entry point. Its an IDE with a very visual debugger and is some sort of “out of the box” solution. Its aimed at beginners, so you probably won't be doing you're productive stuff in it, but to get familiar with Python its great. It also has its own tutorial covering a broad range of subjects, from turtle graphics to SQL Databases.

MegaApuTurkUltra
Scratcher
1000+ posts

Best way to learn Python?

PutneyCat wrote:

What's the best way to learn Python?

1. don't xd
2. learn scheme

$(".box-head")[0].textContent = "committing AT crimes since $whenever"
PutneyCat
Scratcher
500+ posts

Best way to learn Python?

MartinBraendli2 wrote:

PutneyCat wrote:

Online tutorials seem mainly to explain variables, loops etc - which is not really the bit I'm struggling with.
What are you struggling with?


TigerJython (Python 2) is an easy entry point. Its an IDE with a very visual debugger and is some sort of “out of the box” solution. Its aimed at beginners, so you probably won't be doing you're productive stuff in it, but to get familiar with Python its great. It also has its own tutorial covering a broad range of subjects, from turtle graphics to SQL Databases.

Thanks - I'll check out TigerJython, sounds good. I guess my struggle is with the user interface / deployment side of things. To use Scratch terminology, it kind of feels like having access to variables/controls/operators but not to stage/background/costumes etc. But all will become clear in time!
TheUltimatum
Scratcher
1000+ posts

Best way to learn Python?

PutneyCat wrote:

MartinBraendli2 wrote:

PutneyCat wrote:

Online tutorials seem mainly to explain variables, loops etc - which is not really the bit I'm struggling with.
What are you struggling with?


TigerJython (Python 2) is an easy entry point. Its an IDE with a very visual debugger and is some sort of “out of the box” solution. Its aimed at beginners, so you probably won't be doing you're productive stuff in it, but to get familiar with Python its great. It also has its own tutorial covering a broad range of subjects, from turtle graphics to SQL Databases.

Thanks - I'll check out TigerJython, sounds good. I guess my struggle is with the user interface / deployment side of things. To use Scratch terminology, it kind of feels like having access to variables/controls/operators but not to stage/background/costumes etc. But all will become clear in time!
Once you learn a few libraries I think you'll find things are much different.
MartinBraendli2
Scratcher
100+ posts

Best way to learn Python?

TheUltimatum wrote:

Once you learn a few libraries I think you'll find things are much different.
Yes. Scratch comes with a range of functions for Input/Output. With “real” languages this is usually different. They offer a range of ways to manipulate memory, but are very limited in IO. So for everything that goes further than read/write from/to command line, you'll need to import a library that communicates with the Operating System (and indirect with the Hardware).
The good thing about TigerJython is that you don't have to worry about choosing and downloading libraries at first, since it comes with a big set of libraries (you'll still need to import 'em though).
But you have to keep in mind that those libraries inclueded are not always the best (and only ones) for certain tasks. You will sooner or later have to try multiple libraries and compare which one does fit your needs best.

WooHooBoy
Scratcher
1000+ posts

Best way to learn Python?

eeymao wrote:

Install gentoo. You shouldn't program on a windows computer, and when you use linux, you shouldn't use anything other than the ultimate distribution, gentoo linux (or LFS, but it's slightly more complex. Distributions from 4chan might work as well, such as cloverOS).
I'd just like to interject for moment. What you're refering to as Linux, is in fact, GNU/Linux, or as I've recently taken to calling it, GNU plus Linux. Linux is not an operating system unto itself, but rather another free component of a fully functioning GNU system made useful by the GNU corelibs, shell utilities and vital system components comprising a full OS as defined by POSIX.

Many computer users run a modified version of the GNU system every day, without realizing it. Through a peculiar turn of events, the version of GNU which is widely used today is often called Linux, and many of its users are not aware that it is basically the GNU system, developed by the GNU Project.

There really is a Linux, and these people are using it, but it is just a part of the system they use. Linux is the kernel: the program in the system that allocates the machine's resources to the other programs that you run. The kernel is an essential part of an operating system, but useless by itself; it can only function in the context of a complete operating system. Linux is normally used in combination with the GNU operating system: the whole system is basically GNU with Linux added, or GNU/Linux. All the so-called Linux distributions are really distributions of GNU/Linux!

considered harmful
TheUltimatum
Scratcher
1000+ posts

Best way to learn Python?

WooHooBoy wrote:

eeymao wrote:

Install gentoo. You shouldn't program on a windows computer, and when you use linux, you shouldn't use anything other than the ultimate distribution, gentoo linux (or LFS, but it's slightly more complex. Distributions from 4chan might work as well, such as cloverOS).
I'd just like to interject for moment. What you're refering to as Linux, is in fact, GNU/Linux, or as I've recently taken to calling it, GNU plus Linux. Linux is not an operating system unto itself, but rather another free component of a fully functioning GNU system made useful by the GNU corelibs, shell utilities and vital system components comprising a full OS as defined by POSIX.

Many computer users run a modified version of the GNU system every day, without realizing it. Through a peculiar turn of events, the version of GNU which is widely used today is often called Linux, and many of its users are not aware that it is basically the GNU system, developed by the GNU Project.

There really is a Linux, and these people are using it, but it is just a part of the system they use. Linux is the kernel: the program in the system that allocates the machine's resources to the other programs that you run. The kernel is an essential part of an operating system, but useless by itself; it can only function in the context of a complete operating system. Linux is normally used in combination with the GNU operating system: the whole system is basically GNU with Linux added, or GNU/Linux. All the so-called Linux distributions are really distributions of GNU/Linux!
Thanks for that nugget of wisdom, tiny Richard Stallman.
PutneyCat
Scratcher
500+ posts

Best way to learn Python?

MartinBraendli2 wrote:

TheUltimatum wrote:

Once you learn a few libraries I think you'll find things are much different.
Yes. Scratch comes with a range of functions for Input/Output. With “real” languages this is usually different. They offer a range of ways to manipulate memory, but are very limited in IO. So for everything that goes further than read/write from/to command line, you'll need to import a library that communicates with the Operating System (and indirect with the Hardware).
The good thing about TigerJython is that you don't have to worry about choosing and downloading libraries at first, since it comes with a big set of libraries (you'll still need to import 'em though).
But you have to keep in mind that those libraries inclueded are not always the best (and only ones) for certain tasks. You will sooner or later have to try multiple libraries and compare which one does fit your needs best.

Thanks again to you both. I'm starting to understand all this much better now.
travoljohn
New to Scratch
1 post

Best way to learn Python?

Try this simple Python Tutorial…

http://net-informations.com/python/default.htm

Last edited by travoljohn (Oct. 16, 2018 05:29:53)

ninjagolloyd
Scratcher
500+ posts

Best way to learn Python?

pls no necropost

Last edited by ninjagolloyd (Oct. 16, 2018 11:20:05)


bean

Powered by DjangoBB