Python is an appropriate computer language for kids and teenagers. A very good book for beginners: Invent Your Own computer games with Python Author: Al Sweigart It's free online, but it's worth to have one.
Get Outlook for iOS<https://aka.ms/o0ukef> ________________________________ From: Python-list <python-list-bounces+estates=hestates....@python.org> on behalf of avi.e.gr...@gmail.com <avi.e.gr...@gmail.com> Sent: Wednesday, September 7, 2022 7:32:11 PM To: python-list@python.org <python-list@python.org> Subject: RE: Question about learning Python Chris, I started with BASIC in high school and kept shifting my focus from one computer language to another long before I even looked at Python. Arguably each language had a REASON for existing so it supported some ideas or paradigms or ways of looking at things. Many at first were rather focused on doing one or a few things well, and others not so well or not at all. No need to rehash it. In a sense, many modern languages can be viewed as containing multiple overlapping modules which collectively do all kinds of things in many ways and can do whatever many earlier initial releases of earlier languages did, sometimes better but also sometimes slower. If you look at Python as a base and added modules, it can do all the mathematical things of say FORTRAN, manipulate text and produce reports and on and on. But it also can NOT do things done in basic, or at least not easily, like subroutines and goto's that are associated with a more primitive way to solve problems. Is there any purpose in teaching new students how to structure your code so that you use such methods? Well, maybe. I mean we have all kinds of slightly hidden ways to do a GOTO in some languages such as breaking out of a nested loop. Underneath it all, an IF/THEN/ELSE type of statement has regions you jump between. But arguably it is helpful to see operations on a higher level and leave the details of how it is accomplished in well tested code within the interpreter or compiler. C was designed on purpose to do some things that a language like PASCAL was designed not to allow or make easy. Both started off though as fairly simple languages that did things somewhat linearly. You can obviously emulate many things using a simplified subset of Python that would allow programs in those languages to be done. If that is all you want to learn, fine. But if your goal is to make use of OO and functional programming and other paradigms supported, ... As I posted elsewhere, I ask why the questioner specifically mentioned C. I also use R and there too, C is only needed if you want to speed up some function by writing parts in their version of C or C++. The fact that many interpreters are written (or sometimes were written) in C is not really relevant. -----Original Message----- From: Python-list <python-list-bounces+avi.e.gross=gmail....@python.org> On Behalf Of Chris Angelico Sent: Wednesday, September 7, 2022 2:58 PM To: python-list@python.org Subject: Re: Question about learning Python On Thu, 8 Sept 2022 at 04:54, Grant Edwards <grant.b.edwa...@gmail.com> wrote: > > On 2022-09-07, Chris Angelico <ros...@gmail.com> wrote: > > On Thu, 8 Sept 2022 at 01:50, Maruful Islam <maruf.g...@gmail.com> wrote: > >> > >> I want to start learning python. I have a question about learning python. > >> > >> Is learning C essential or not for learning python? > > > > Absolutely not essential. In fact, I would strongly recommend > > learning Python before ever picking up C, as it's much easier to > > mess around in Python. > > If you're a beginning programmer, then IMO learning C first is > probably detrimental. C has quite a few quirks and pitfalls that will > a) frustrate you and waste time, and b) influence your way of thinking > about programs in a way that will be unhelpful for higher level > languages. Not as detrimental as starting with BASIC, and then moving on to x86 assembly language, and trying to massage the two together using CALL ABSOLUTE in order to get mouse input in your GW-BASIC programs. Don't be me, folks. ChrisA -- https://mail.python.org/mailman/listinfo/python-list -- https://mail.python.org/mailman/listinfo/python-list -- https://mail.python.org/mailman/listinfo/python-list