Yes and that is very GOOD thing. Sadly most tutorials are for those with none or minimal programming experience. I would love to see more of these, maybe they are out there but the beginner tutorials always pop up first when doing a search! ;-(
I am a working dev with over 15 years experience in multiple platforms and languages, starting with Python seriously only now. I simply have not come across a more succinct and comprehensive intro to Python, for a Developer. Derek rocks!
Hi Derek, on the method toString() of the class Dog I only managed to put it to work like this: (this works) def toString(self): return "{} is {} cm tall and {} kilograms, says {} and owner is {}".format( self.get_name(), self.get_height(), self.get_weight(), self.get_sound(), self.__owner) ...instead of: (this doesn't) def toString(self): return "{} is {} cm tall and {} kilograms, says {} and owner is {}".format( self.__name, self.__height, self.__weight, self.__sound, self.__owner)
If you change the variable definitions in the animal class to a single leading underscore (_name instead of __name) that makes the variables protected instead of private which allows child classes to access the parent class's variables.
It's heartening to see the number of views on these types of videos. That's at least 3.9 million peoples' kids who will probably be introduced to programming from an early age. Those are good numbers.
We had to learn html in 7th grade... I hated my teacher and coding. Now, thanks to conspiracy theories, I am researching coding independently. Oh how the tables have turned ×_×
This is the first time that I'm putting a comment for a video on youtube! "This was exactly what I was looking for." I was procrastinating for so long to learn Python, but you finally helped me to do that. I was under the impression that even knowing how to install it, would take me a couple of hours! When I randomly started watching your video, I noticed that before the second minute, you had already covered all I needed for the installation. I just couldn't resist finishing this video. Thank you so much. "LOVE YOU"
That's awesome! Thank you :) I'm happy it helped. If you want to learn more I teach Python through problem solving here th-cam.com/video/nwjAHQERL08/w-d-xo.html
I'm new to programming so i've had to stop this video every 15 second. Still prefer this tutorial to others that i've seen since it's so concise and clear. The other guy i watched spent 5 minutes ranting about random crap.
I love how fast-paced this tutorial is. It cuts straight to the point about the stuff you need to know and it taught me so much about this amazing language. Thanks Derek!
7:15 print("%s %s %s" %('quote', quote, multi )) This syntax is different than most languages where function & method arguments are comma separated. I wonder if the function declaration for print() is only accepting one parameter, then parsing it ? Because of the weird syntax with %() being passed in. Most languages would accept an array and the syntax would be print("%s %s %s", 'quote', quote, multi)... Yeah, looking at the source code, it looks like there can only be one comma that does separation of args & kwargs (keyword_args like sep, file & end as shown in 7:50). Based off the function declaration, i'm guessing that if you wanted to use all 3 keywords sep, file, & end, i'm guessing that they'd be separated by spaces ? 8:58 print('First Item', grocery_list[0]) Okay, now I'm confused ? Maybe I was looking at the source code for a different version of Python than the one you're using ? No string concatenation here. Just a list of parameters ? I see now that your IDE says the print declaration is an array of objects. 11:30 *del* grocery_list[4] _VERSE_ grocery_list.*remove*("Pickle") 14:43 *del* super_villians['Fiddler'] 14:21 super_villians = {"Fiddler" : "Issac Bowin"} 14:59 super_villians['Pied Piper'] = 'Hartley Rathaway' Python seems schizophrenic: Sometimes it's using the methods of an object (the object oriented approach) and other times it's using an outside function or keyword to act on an object. Sure, it's perfectly fine to use a function to act on an object sometimes. But I'm not sure I can agree that this is a good beginner language because of the inconsistencies, and the use of symbols to represent real objects. Symbols are nice shortcuts for experienced programmers, but i believe they're doing a dis-service to people learning OOP. If someone doesn't understand object-oriented programming, then i would recommend Java or C# because they have so many objects to use... And after a while of using well designed objects (like Collections, List, Set, Map), OO will start to "click" and you'll "get it." Compare the above python to java: Map super_villians = new HashMap(); super_villians.put("Fiddler", "Issac Bowin"); super_villians.remove("Fiddler"); super_villians.put("Pied Piper", "Thomas Peterson"); super_villians.put("Pied Piper", "Hartley Rathaway"); super_villians.size() 17:38 The logical operators *and*, *or*, *not*: This is a cool language feature to have these as keywords instead of symbols. 20:02 for x in range(0, 10) I didn't see an example of a backwards for-loop, but stackoverflow has several different ways. 33:22 def set_name(self, name): self is an interesting concept, but it's totally un-necessary to implement a language in this way. Also, i noticed that even tho methods declare self as a parameter, that you're not required to pass it as an argument (i'm guessing it gets passed automatically). 40:49 What about: def play_sound(self): play_sound(self, 1) def play_sound(self, how_many): print(self.get_sound() * how_many) 41:43 def get_type(self, animal) "And it is going to receive Animal objects." How does it only take animal objects ? No type is specified. Couldn't you pass it any object that had a method get_type() ? in a strongly typed language, it's easy to see what type of objects are passed into functions & methods (the types are part of the method declaration). I'm struggling to see how you know what type of object to pass into a method without looking at the implementation details ? 42:22 test_animals = AnimalTesting() There's no view ? No virtual ? No interface ? No abstract class ?
That was great. I hadn't planned on watching the whole thing, but I started watching and the next thing I knew 43 mins had passed. Thanks for making it, Derek!
These videos are probably more in line if you've already learnt one language to a decent level as picking up another one is relatively simple - more often than not the differences are just syntactical
Don't use this video as the only tool to rely on. This video is very short and it doesn't take 45 minutes to actually learn coding. try to learn something new, make some assignments for yourself, re-read and make your own tests. That's how I learn by myself
personally i would see this vid, the go to thenewboston, and then watch this again, yes i know this is a 1 year old comment and there is a 98% you've already learned python
Thank you so much Derek, awesome! First I thought your videos were so difficult because of the speed and all the information, but after finally understanding Java as my first language (thanks to your videos mostly) I realized I can learn any language in no time with your help! You are so great! Thank you for sharing!
Im an expert in C/C++ and was browsing through different webpages on how to learn python the fastest way. I must say that this video covers almost entirely everything that i wanted to know! Great job!
123Mrchoy what do you (personally) program with C and C++? I'm just curious because I've been learning a little about those languages and are interested in hearing someone's personal experience
This is perfect for me because I completed the Python course on Codecademy a while ago and wrote a few scripts but I haven't touched it in months. This offers a great refresher than I can sit through in one session rather than having to pull from various different sources. Thanks.
+michaeljacksonator I know this is an old post, but I'm just now seeing it, lol. Unless you've used Python in a project that shows up elsewhere on your resume, I'd leave it out until you do. Your practical experience with a program cannot simply be you watched a youtube video of someone using it and you played around with it for a few hours. It doesn't need to be a complex project, maybe just talking to an arduino project via the serial port. But employers want to know you have experience with something before deciding to add it to your resume.
+michaeljacksonator if you understand difference between programming and programming language feel free to add python. everyone who can program can write python.
If you ran into an error for spot.toString (), try changing in Dog: def toString(self): return super(Dog, self).toString() + " Her owner is {}.".format(self.__owner) This worked for me, thx 2 stackoverflow for the answer ☆♡☆
I usually don't comment on videos, but this tutorial seems very helpful. I just found your channel and I can already tell this is a great channel! I dropped a big thumbs up on this video and even subscribed because of this video! Keep up the good work man!
One question: In Dog's toString(), how is it possible that you were allowed to directly access 'Animal's privates, such as __name, __height, __weight, __sound? 'Animal's privates are supposed to be not accessible by the derived class 'Dog', and that's why you had to define Animal member functions get_name(), get_height(), get_weight() and get_sound(). I tried your code as-is, and got the expected error (ie, something like 'Dog has no member named __name'). By the way, Excellent Video, Derek! :)
+Rúben Borralho in case you didnt see the bottom solution: you have to change self.__name in the dog toString to self._Animal__name and repeat for the other variables that come directly from animal That way you can access the private variables.
@@ludviglindholm8314 Classes (or Object -Oriented Programming) is a methodology that we use in programming to model real world objects. Think how to describe an apple to a computer. You can give characteristics and give it actions. Classes are to nouns, as functions are to verbs and variables are to adjectives. Take that with a grain of salt though. Thinking of a video game character also helps you imagine it. The character would be your class. Health and Defense are variables and when your character moves and takes damage are functions.
Yeah, you don't understand OOP in 13 minutes don't worry just do lots of examples. OOP is a great methodology for organizing your variables and functions and is very helpful for really large projects
This video I think is for people who already know the fundamentals in another language but don't know python, if you don't understand oop at all then you should watch a more detailed video on that.
Hey Derek, can you please make a video series on how to make Android apps in C# using Visual Studio. A lot of people need it. Please try your best. If not can you suggest some great sources for it...
thank you sir...and maintain this speed of teaching...sometimes it is very fast that i need to pause your video...but it's ok...i learn lot's of new thing in your great tutorial...thank you again sir...
Theta Scorpii Is that a "why?" ._. Anyway it's because I'm just used to using them. Every time I write a statement in Python I put a semicolon unconsciously, it's annoying lol.
prepareuranus I think you have got habit of C and C++ programming in which we have to put Semicolons and braces for defining or declaring ;) ! never mind , it happens .
prepareuranus The semicolons and braces in those languages are seen as redundancy in Python. The indented structure provides what both semicolons and braces do in those languages.
prepareuranus I agree somewhat. I don't miss the semicolons. However, I'd gladly trade indentation for braces. Guido has said that will never happen, though.
I am working my way through this video. This is my first serious foray into programming and I just want to say "Thank you!". Very well laid out and paced. I am looking forward to going through your videos on C# and c++ next!
Awesome Video @Derek. Thank you! Small error: at 39:30, change "__name" into "get_name()" to avoid error . Same goes for attributes "height", "weight" and "sound", except the newly created attribute "__owner".
I'm a beginner C programmer and you forgot a few lines: #include int main(void) { unsigned long long infinity=0; while (infinity > 0) { printf("Pokémon Go "); } exit(0); } Or even more efficient: #include int main(void){ while (1) { printf("Pokémon Go"); } exit(0);} Also, idc that I'm in a python programming video, I'm learning C atm dammit.
Something important to note is that he accesses private variables from child class which should not be allowed in proper OOP practise. I think Derek probably uses an older version of Python but in 3.6.3 you have to set the instance variables as protected not private to access them from child class and this is done by starting the variable names with single underscores.
Finished the whole thing. I've got 334 lines in my text editor. Thank you very much for making this. I now feel comfortable enough with python that I can use it for my projects in school.
Crisp and comprehensive at the same time. An awesome jumpstart for anyone who is familiar with programming constructs and syntax in general, but not familiar with Python at all. Super!!!
ATTENTION: For those planning to put "Python Programming" on their resume after watching this video, you must be DELUSIONAL! Even though this video does an amazing job of covering the general basics, it does just that: it covers the BASICS. There is wayyyyyy more to python. In your job interviews, the employer will ask you if you have any experience in particular python fields like Python Networking, Data Science with Python, Machine Learning Systems with Python, Black Hat Python, etc. No one will hire you just because you know how to create a loop, a list, or a class in Python! So deflate that programming ego of yours or else you will face a big world of hurt when the employer decides you are not right for that amazingly high paid programming job. That will be an opportunity flushed down the toilet all because you thought that 1 video was enough to teach you a whole programming language. You will need at least need a year or two of consistent python programming experience before an employer can take you seriously.
Am I the only one who did not skip any second of this video?? Very explicit and clear. I already have C programming and VB. Net experience but it is my first python tutorial. I have now an idea of how I can assimilate all these languages. Thanks Derek
For me, I use tutorials to know about something precise. I mean if I have a project or problem to resolve and that I am blocked, I look for specific video and in a specific time. But this one was different because it is like a lesson at school. I really enjoy it and I am willing to learn more about it by using the other languages I already knew.
In the Dog::Animal example, it won't let me access __name, __height, __weight, nor __sound from the derived class toString() def, probably since they are private. How do we make them protected, like in C++, so the derived class can access ? (EDIT): I'm new to Python, but I just read a bit of the docs about the issue. It would seem that the Python name-mangling mechanism that is used to fake private class data, applies to the *current* class - so such variables would always have a name unique to their definition at their own level in a class hierarchy. Animal::__name becomes _Animal__name, but Dog::__name becomes _Dog__name. This can be seen by expanding objects in the debugger. Is there any way around being forced to use the base class's getter/setter functions from the derived class (and still have private data) ? That would seem inefficient. (EDIT #2): I figured out a way ! - in the derived class, just use the base class mangled name directly. So to access the __name variable from the Dog class, that was declared in the Animal class, just use _Animal__name ! Do you think this breaks any rules ? Also, how did you code compile with Dog::toString() as shown ? (I'm using Python 3.4.2 on the pyCharm IDE on Windows 7 64 bit)
agnichatian Thank you for posting all that you discovered! The rule that is broken is the rule of encapsulation. It is almost always best to use the getter and setter methods that are inherited by subclasses, but it is also nice to understand the work arounds. Just make sure you heavily comment your code if you ever break rules. Others that see your code may not understand what you did.
Derek Banas Yes, that is why I was so concerned about it. The docs clearly show that there is no enforcement of the encapsulation in Python. Coming from a C++ perspective, this is dangerous and I'll bet causes a lot of unreliable code out there. The fact is that many will not maintain an engineering discipline when writing and using classes ! Thanks for tie video.
I am coding a text number guessing game, using the information I gained from your video :-) Still working on it. trying to figure out what statement to use so that if a == b to go back and redo it, so there will be no duplicate numbers.
Abbie, Thank you for your reply! I am working on the game, slowly but surely. Now I am trying to throw a Raspberry Pi into the mix.. Turn on a red LED for a guess that is too high and a yellow LED for a guess that is too low and a green LED for the right guess..
Abbie Wolff I got the whole kit and kaboodle.. I got this kit www.ebay.com/itm/Sunfounder-Project-Super-Starter-Kit-for-Raspberry-Pi-Model-B-40-Pin-GPIO-Board-/151460909119?pt=LH_DefaultDomain_0&hash=item2343c6103f and the Raspberry Pi kit with the camera, jumpers, bread board etc
I SOOO appreciate you taking the time to edit your video. Very helpful and, unlike many tutorial videos, cutting to the most interesting and important parts. Thank you! Love what you did there.
karthikeyan mg right brother...i am programmer who is familiar with c c++ and java syntex...so sometimes i find difficulties to write code in python language...but at the end python is also great language for development of anything...
coming from a php background( dont hate me :'l ) i noticed when you appended "onions" in grocery list the concatenated to_do_list was also updated? does that mean to_do_lists variable only has a reference to the grocery_list variable??? pls help
Yes. Python doesn't duplicate data if it doesn't have to, so instead of a copy of the grocery_list being added to to_do_list, to_do_list points at grocery_list. If you wanted to copy all the data, you would slice grocery_list like this: to_do_list = [other_events, grocery_list[:]] Other methods are: to_do_list = [other_events, list(grocery_list)] Or use the copy module and: import copy to_do_list = [other_events, copy.copy(grocery_list)] If you need to copy objects, you can use newObject = copy.deepcopy(oldObject)
Have to say, that the best channel for a programmer fast learning, clear and without too much hour of explanation around to explain the beginner's topics Derek, you save my Degree exams, my professional learning, big fan!
I'm really strugling with understanding the purpose of the Object part, at setters and getters. At some of them the (self...) just poops up in pink colour and at others I have to manually put it in. Is there any difference between popping up and putting it in manually ? Some advice from any of you would be greatly appreciated, a noob trying to be a future programmer here, THANKS !
Awesome video! I have learned Java, HTML/CSS/JavaScript, and I wanted to know how to program C++ and python. Because of this video, I was able to learn python, and learn c++ all in one video. Thanks a lot Derek!
+GPC™ ..as per your code, the user is expected to enter the name within quotes (eg: "sudheer"). but user may not know this. So, instead, use name=raw_input("enter your name"). this works better when the user is expected to enter a string.
In the old version of python this was the case. However in the newer version: input('What is your name?') works perfectly fine and now you don't really have to use raw_input.
Hi Derek ,great video, I went thru most of it. I got stuck with : AttributeError: 'Dog' object has no attribute '_Dog__name' Do you have a clue as to what it means?
If this is referring to the to_string() function in the dog class I found the answer. In the cheat sheet in the description the code is different to the video. Instead calling 'self.__name' you call the animal getter method 'self.get_name()'.
I was searching for the news story about a man eaten by a python in indonesia, and i ended up watching this instead..divine calling to be a programmer?
this is probably the most accurate,precise and run with perfect speed computer tutorial! Real programmers will love this. This is how fast computer tutorials should be
Absolutely Brilliant! Your way of explaining is like "Keep it simple, cut to the chase". Even a beginner like me understood up to 80% of the video in one go. Thank you sir! and looking forward to see more. :-)
Lol it's nothing like Java, Java is compiled and Python is interpreted that alone makes them a lot different from each other, if you're talking about the syntax you'll be pleased to know that a lot of languages have a similar syntax, Java and Python are both C based languages so naturally they'll have a similar syntax.
I’m Australian so my order of operations goes a little different to America’s I’m pretty sure B-Brackets O-Other (eg. percent) M-Multiplication D-Division A-Addition S-Subtraction
Exactly, if you follow the example as it is here IT WON'T WORK. Try to get rid of the say __.xxx and replace them with self.xxx, that will make it work.
This tutorial is actually really bad. Things like using sys.stdin.readline() instead of input(), defining private variables in a class, using setter and getter methods, etc. etc. are all horribly unpythonic or even borderline incorrect. This tutorial teaches you how to write Java in Python. It does not teach you Python.
I saw this video 6 years back and started doing python programming. Now in 2021 still I'm sharing this video with my friends, students and colleagues to start their career in python. Thanks derek - Rohit
Ok someone has to help me... I'm at about 40 min in the video and when I try to print spot.toString I get an error: AttributeError: 'Dog' object has no attribute '_Dog__name' Everything I've done is exactly as in the video but for some fucing reason Spyder thinks I'm calling _Dog__name instead of __name. Wtf do I do?
I had the same issue and this is the solution. Derek copy-pasted the toString method from the Animal class, but he left the attributes as self.__name, self.__height etc. I don't really know how it worked for him but I have to call the Animal getter methods to get values for those variables. My guess is that even though we're inheriting from Animal class, we still can't access the private variables directly from the Dog class. If you look at the cheat sheet in the video description, you'll see Derek also uses getter methods within the Dog toString method - for some reason he hasn't shown this in the video, but that's how to get around that problem
thank you!, i think he just edits out a lot of stuff from the video to be shorter, but in doing so he edited his fix to this, since you can even see the jumpcut after he clicked enter
Learn in One Videos for Every Programming Language
Subscribe to Bookmark them: bit.ly/2FWQZTx
C++ : th-cam.com/video/Rub-JsjMhWY/w-d-xo.html
Python : th-cam.com/video/N4mEzFDjqtA/w-d-xo.html
Java : th-cam.com/video/n-xAqcBCws4/w-d-xo.html
PHP : th-cam.com/video/7TF00hJI78Y/w-d-xo.html
MySQL : th-cam.com/video/yPu6qV5byu4/w-d-xo.html
JavaScript : th-cam.com/video/fju9ii8YsGs/w-d-xo.html
C# : th-cam.com/video/lisiwUZJXqQ/w-d-xo.html
HTML5 : th-cam.com/video/kDyJN7qQETA/w-d-xo.html
CSS3 : th-cam.com/video/CUxH_rWSI1k/w-d-xo.html
JQuery : th-cam.com/video/BWXggB-T1jQ/w-d-xo.html
TypeScript : th-cam.com/video/-PR_XqW9JJU/w-d-xo.html
ECMAScript : th-cam.com/video/Jakoi0G8lBg/w-d-xo.html
Swift : th-cam.com/video/dKaojOZ-az8/w-d-xo.html
R : th-cam.com/video/s3FozVfd7q4/w-d-xo.html
Haskell : th-cam.com/video/02_H3LjqMr8/w-d-xo.html
Handlebars : th-cam.com/video/4HuAnM6b2d8/w-d-xo.html
Bootstrap : th-cam.com/video/gqOEoUR5RHg/w-d-xo.html
Rust : th-cam.com/video/U1EFgCNLDB8/w-d-xo.html
Matlab : th-cam.com/video/NSSTkkKRabI/w-d-xo.html
Arduino : th-cam.com/video/QO_Jlz1qpDw/w-d-xo.html
Crystal : th-cam.com/video/DxFP-Wjqtsc/w-d-xo.html
Emacs : th-cam.com/video/Iagbv974GlQ/w-d-xo.html
Clojure : th-cam.com/video/ciGyHkDuPAE/w-d-xo.html
Shell : th-cam.com/video/hwrnmQumtPw/w-d-xo.html
Perl : th-cam.com/video/WEghIXs8F6c/w-d-xo.html
Perl6 : th-cam.com/video/l0zPwhgWTgM/w-d-xo.html
Elixir : th-cam.com/video/pBNOavRoNL0/w-d-xo.html
D : th-cam.com/video/rwZFTnf9bDU/w-d-xo.html
Fortran : th-cam.com/video/__2UgFNYgf8/w-d-xo.html
LaTeX : th-cam.com/video/VhmkLrOjLsw/w-d-xo.html
F# : th-cam.com/video/c7eNDJN758U/w-d-xo.html
Kotlin : th-cam.com/video/H_oGi8uuDpA/w-d-xo.html
Erlang : th-cam.com/video/IEhwc2q1zG4/w-d-xo.html
Groovy : th-cam.com/video/B98jc8hdu9g/w-d-xo.html
Scala : th-cam.com/video/DzFt0YkZo8M/w-d-xo.html
Lua : th-cam.com/video/iMacxZQMPXs/w-d-xo.html
Ruby : th-cam.com/video/Dji9ALCgfpM/w-d-xo.html
Go : th-cam.com/video/CF9S4QZuV30/w-d-xo.html
Objective C : th-cam.com/video/5esQqZIJ83g/w-d-xo.html
Prolog : th-cam.com/video/SykxWpFwMGs/w-d-xo.html
LISP : th-cam.com/video/ymSq4wHrqyU/w-d-xo.html
Express : th-cam.com/video/xDCKcNBFsuI/w-d-xo.html
Jade : th-cam.com/video/l5AXcXAP4r8/w-d-xo.html
Sass : th-cam.com/video/wz3kElLbEHE/w-d-xo.html
As many languages you know so many times you are a human...
Nerrrrrrrrrrrrrrrrrrrrrrrrrrrrddddddddddddddddddd....Thank you.
Jesus christ litarly you are the jesus christ of tutorials
such a freckn big list this knowledge could last me for years thnks
What I need to know is: HOW DO YOU LEARN SO MANY PROGRAMMING LANGUAGES?
Install : 0:17
Basics : 2:23
Arithmetic : 4:21
Strings : 5:54
Lists / Arrays : 8:08
Tuples : 12:24
Dictionary : 13:37
Conditionals : 15:46
For Loop : 19:41
While Loop : 21:57
Functions : 24:59
User Input : 26:34
String Functions : 26:57
File I/O : 30:11
Classes / Objects : 32:04
Constructors : 34:39
Inheritance : 37:24
Overwriting Functions : 37:58
Overloading Functions : 39:47
Polymorphism : 41:19
in the description psssst I'm sure you know already so we'll keep it a secret
+Albert Matei Haha I saw the description but the links open a new tab...
+Thanos Sofroniou your just looking out for all of us, a true hero😢
+Thanos Sofroniou Heaven is filled with people like you.
+Thanos Sofroniou An hero
Install : 00:17
Basics : 02:23
Arithmetic : 04:21
Strings : 05:54
Lists / Arrays : 08:08
Tuples : 12:24
Dictionary : 13:37
Conditionals : 15:46
For Loop : 19:41
While Loop : 21:57
Functions : 24:59
User Input : 26:34
String Functions : 26:57
File I/O : 30:11
Classes / Objects : 32:04
Constructors : 34:39
Inheritance : 37:24
Overwriting Functions : 37:58
Overloading Functions : 39:47
Polymorphism : 41:19
Pamul Yadav what does file I/O do or mean
It is the shorthand for « File Input/Output », which is the creation, deletion, opening and reading, opening and writing part for Files.
Bless your soul! Thanks!
grt job yadav
You are the real MVP
Table of contents (you can use the timemarkers as shortcuts):
2:25 hellopython.py
3:58 data types
4:18 arithm operations
5:01 order of operations
6:57 print
8:06 lists
12:30 tuples
13:37 dictionaries / maps
15:45 conditions
17:31 logical operators
19:41 loops
24:59 functions
26:35 user input (sys.stdin.readline())
27:00 more about strings
30:12 file I/O
32:05 objects
36:42 object instantiation
37:25 inheritance
39:49 method overloading
41:19 polymorphism
this is a method to learn a language if u already know a programming language
It's a good method to refresh your memory when you know multiple languages and you have to prepare for a job interview
@@bra5081 yes
its not possible to teach programming to a newbie in 45 minutes which is the length of the video
Yes and that is very GOOD thing. Sadly most tutorials are for those with none or minimal programming experience. I would love to see more of these, maybe they are out there but the beginner tutorials always pop up first when doing a search! ;-(
Yeah that's what I was looking for!
I am a working dev with over 15 years experience in multiple platforms and languages, starting with Python seriously only now. I simply have not come across a more succinct and comprehensive intro to Python, for a Developer. Derek rocks!
Thank you for the nice compliment :)
Hi Derek, on the method toString() of the class Dog I only managed to put it to work like this:
(this works)
def toString(self):
return "{} is {} cm tall and {} kilograms, says {} and owner is {}".format(
self.get_name(),
self.get_height(),
self.get_weight(),
self.get_sound(),
self.__owner)
...instead of:
(this doesn't)
def toString(self):
return "{} is {} cm tall and {} kilograms, says {} and owner is {}".format(
self.__name,
self.__height,
self.__weight,
self.__sound,
self.__owner)
yeah.. figured that out after awhile too..
This needs to be on top
If you change the variable definitions in the animal class to a single leading underscore (_name instead of __name) that makes the variables protected instead of private which allows child classes to access the parent class's variables.
Actually it's standard to use __repr__ instead of toString. So you can simply, do -- print cat, dog
thanks that was driving me cray
that was a great tutorial. I liked the speed of it. No blablabla, just straight to the points. thank you.
+Johannes Seikowsky Thank you :) I do my best to not waste time
But really. Other lecturers spent half an hour on the print command. geez
Go to the settings and play the video at 0.75 speed, should help a lot! Also...
Install : 0:17
Basics : 2:23
Arithmetic : 4:21
Strings : 5:54
Lists / Arrays : 8:08
Tuples : 12:24
Dictionary : 13:37
Conditionals : 15:46
For Loop : 19:41
While Loop : 21:57
Functions : 24:59
User Input : 26:34
String Functions : 26:57
File I/O : 30:11
Classes / Objects : 32:04
Constructors : 34:39
Inheritance : 37:24
Overwriting Functions : 37:58
Overloading Functions : 39:47
Polymorphism : 41:19
instead I played it at 1.25)
print("hello world")
hello world
MOM AM A PROGRAMMER
Z Button lol
You produce more with less code. That´s power !
DailyKidness PRINT: "Yes, you can"
No! in BASIC:
10 PRINT "Hello World!"
20 GOTO 10
public static void main (String [] args){
System.out.println("NO!!");
}
I was looking for a one-pot pasta recipe and ended up watching this entire video.
That's funny :)
Project BRE by
Bro, go for one pot quinoa dishes. Way hipper.
Hope you liked it. :)
Project BRE programming hunger 😂
I generally fasten the speed of any tutorials on YT
but here for the first time i have to slow down the speed
I specialize in fast videos full of content :)
Derek Banas great work
same!!!
same here :D
True
Comming from Java Python looks and feels like a stroll in a park breathing a fresh ozone air after summer rain...
Python is definitely a dream language I agree :)
Breathing in that good ass prana
You do not want to breath in ozone
Had same feeling after years of Java
thanks for the warning, I def won't learn it now
It's heartening to see the number of views on these types of videos. That's at least 3.9 million peoples' kids who will probably be introduced to programming from an early age. Those are good numbers.
I agree 100% !!! It is also awesome that TH-cam has been pushing more education channels lately
Yep, great channel btw, subscribed.
We had to learn html in 7th grade... I hated my teacher and coding. Now, thanks to conspiracy theories, I am researching coding independently. Oh how the tables have turned ×_×
I'm 15
th-cam.com/video/25gvhzRN3ns/w-d-xo.html
Fonts , sound , code every thing perfect
Thank you very much :)
This is the first time that I'm putting a comment for a video on youtube!
"This was exactly what I was looking for."
I was procrastinating for so long to learn Python, but you finally helped me to do that. I was under the impression that even knowing how to install it, would take me a couple of hours! When I randomly started watching your video, I noticed that before the second minute, you had already covered all I needed for the installation. I just couldn't resist finishing this video.
Thank you so much.
"LOVE YOU"
That's awesome! Thank you :) I'm happy it helped. If you want to learn more I teach Python through problem solving here th-cam.com/video/nwjAHQERL08/w-d-xo.html
Very very good tutorial, not slow like many others, and it's mostly for people coming from other languages.
Thank you :)
I'm new to programming so i've had to stop this video every 15 second. Still prefer this tutorial to others that i've seen since it's so concise and clear. The other guy i watched spent 5 minutes ranting about random crap.
nope u should start from c# rather than python
Lmao I’m coming from HTML
Hahahaha
This video is really good and fast for someone who already know other languages but want to speed things up
Thank you :)
th-cam.com/video/25gvhzRN3ns/w-d-xo.html
You covered more in 40 minutes than in a course I did in my university for 2 months, 2 hours a week lol
Thank you for the compliment :)
I get it like sarcasm. .not compliment
Tu ne parles pas anglais
Shawn Ruby Tu es tres gentil
Si il ne comprend il devrait vouloir savoir
The lack of semicolons is disturbing and it's weirding me out.
Same.
word
same, here from 2 years in c++
Right? It's unnatural. How can you tell when it stops getting executed?
@@Keshaire By lines
BY FAR, the best video to dive in Python out there. (forget the 11 hours tutorial).
Amazingly efficient.
Assan Sanogo Thank you for the nice compliment :)
I love how fast-paced this tutorial is. It cuts straight to the point about the stuff you need to know and it taught me so much about this amazing language. Thanks Derek!
Thank you :) I'm glad you liked it
Best programming tutorial I've ever watched. Wonderfully succinct! Thank you for putting this together!
Thank you for the compliment :) I'm happy I could help
7:15 print("%s %s %s" %('quote', quote, multi )) This syntax is different than most languages where function & method arguments are comma separated. I wonder if the function declaration for print() is only accepting one parameter, then parsing it ? Because of the weird syntax with %() being passed in. Most languages would accept an array and the syntax would be print("%s %s %s", 'quote', quote, multi)... Yeah, looking at the source code, it looks like there can only be one comma that does separation of args & kwargs (keyword_args like sep, file & end as shown in 7:50). Based off the function declaration, i'm guessing that if you wanted to use all 3 keywords sep, file, & end, i'm guessing that they'd be separated by spaces ?
8:58 print('First Item', grocery_list[0]) Okay, now I'm confused ? Maybe I was looking at the source code for a different version of Python than the one you're using ? No string concatenation here. Just a list of parameters ? I see now that your IDE says the print declaration is an array of objects.
11:30 *del* grocery_list[4] _VERSE_ grocery_list.*remove*("Pickle")
14:43 *del* super_villians['Fiddler']
14:21 super_villians = {"Fiddler" : "Issac Bowin"}
14:59 super_villians['Pied Piper'] = 'Hartley Rathaway'
Python seems schizophrenic: Sometimes it's using the methods of an object (the object oriented approach) and other times it's using an outside function or keyword to act on an object. Sure, it's perfectly fine to use a function to act on an object sometimes. But I'm not sure I can agree that this is a good beginner language because of the inconsistencies, and the use of symbols to represent real objects. Symbols are nice shortcuts for experienced programmers, but i believe they're doing a dis-service to people learning OOP. If someone doesn't understand object-oriented programming, then i would recommend Java or C# because they have so many objects to use... And after a while of using well designed objects (like Collections, List, Set, Map), OO will start to "click" and you'll "get it."
Compare the above python to java:
Map super_villians = new HashMap();
super_villians.put("Fiddler", "Issac Bowin");
super_villians.remove("Fiddler");
super_villians.put("Pied Piper", "Thomas Peterson");
super_villians.put("Pied Piper", "Hartley Rathaway");
super_villians.size()
17:38 The logical operators *and*, *or*, *not*: This is a cool language feature to have these as keywords instead of symbols.
20:02 for x in range(0, 10)
I didn't see an example of a backwards for-loop, but stackoverflow has several different ways.
33:22 def set_name(self, name):
self is an interesting concept, but it's totally un-necessary to implement a language in this way. Also, i noticed that even tho methods declare self as a parameter, that you're not required to pass it as an argument (i'm guessing it gets passed automatically).
40:49
What about:
def play_sound(self):
play_sound(self, 1)
def play_sound(self, how_many):
print(self.get_sound() * how_many)
41:43 def get_type(self, animal)
"And it is going to receive Animal objects."
How does it only take animal objects ? No type is specified. Couldn't you pass it any object that had a method get_type() ?
in a strongly typed language, it's easy to see what type of objects are passed into functions & methods (the types are part of the method declaration). I'm struggling to see how you know what type of object to pass into a method without looking at the implementation details ?
42:22
test_animals = AnimalTesting()
There's no view ? No virtual ? No interface ? No abstract class ?
That was great. I hadn't planned on watching the whole thing, but I started watching and the next thing I knew 43 mins had passed. Thanks for making it, Derek!
+Jordan Scott You're very welcome :) I'm glad you liked it enough to watch it all.
This is so interesting that I paused my Netflix and watched this for whole 44min
Thank you very much :)
@@derekbanasit's like we getting benifit but the teacher saying thanks.
Great video! I haven't used Python in months and I needed a refresher to get me back in developer mode. Got everything I needed! Thanks a lot!
Yeah, I've never programmed anything. Not quite sure why I'm even watching this. 15 minutes in and I'm understanding less and less xD
code.org and code.hs . finish those super simple courses and come back
lol... Im still a little bit confused and have been coding PHP, JQUERY and JavaScript for a year.. I should pay more attention xD
These videos are probably more in line if you've already learnt one language to a decent level as picking up another one is relatively simple - more often than not the differences are just syntactical
Don't use this video as the only tool to rely on. This video is very short and it doesn't take 45 minutes to actually learn coding. try to learn something new, make some assignments for yourself, re-read and make your own tests. That's how I learn by myself
personally i would see this vid, the go to thenewboston, and then watch this again, yes i know this is a 1 year old comment and there is a 98% you've already learned python
I love finding incredible channels on TH-cam. Your mind works on a higher level. Thanks for the entertaining, high quality education.
Pinkhaired Gnom Thank you for the very nice compliment :) You're very welcome
Great video
To see how lists work in loops at 21:30 change to:
num_list=[[1,2,3],[10,20,30],[100,200,300]]
for x in num_list:
for y in x:
print(y)
Thank you so much Derek, awesome! First I thought your videos were so difficult because of the speed and all the information, but after finally understanding Java as my first language (thanks to your videos mostly) I realized I can learn any language in no time with your help! You are so great! Thank you for sharing!
Thank you for all the nice compliments :) It is always great to hear that I've helped!
Im an expert in C/C++ and was browsing through different webpages on how to learn python the fastest way. I must say that this video covers almost entirely everything that i wanted to know! Great job!
+123Mrchoy Thank you :) I'm glad it helped.
+Derek Banas You are the best you helped me get an A on my test thank you!!!!
123Mrchoy what do you (personally) program with C and C++? I'm just curious because I've been learning a little about those languages and are interested in hearing someone's personal experience
This is perfect for me because I completed the Python course on Codecademy a while ago and wrote a few scripts but I haven't touched it in months. This offers a great refresher than I can sit through in one session rather than having to pull from various different sources. Thanks.
Pseudo Nym You're very welcome :) I'm very happy that I could help.
Okay, so can i put Python in my resume now?
+Gothangelik where did you took the course ?
+michaeljacksonator I know this is an old post, but I'm just now seeing it, lol. Unless you've used Python in a project that shows up elsewhere on your resume, I'd leave it out until you do. Your practical experience with a program cannot simply be you watched a youtube video of someone using it and you played around with it for a few hours. It doesn't need to be a complex project, maybe just talking to an arduino project via the serial port. But employers want to know you have experience with something before deciding to add it to your resume.
+michaeljacksonator if you understand difference between programming and programming language feel free to add python. everyone who can program can write python.
Well you certainly can't put "understand humor" in your resume...
I know this was sarcasm, but people do not get it lol
Drink 3 energy drinks, smoke 3 joints and watch this video without stopping it. Power learning
+Dolores Watson yeah man smoke de weed
Lol just like school
Noah Byrge
respect bro
+Dolores Watson #Heroes_take_it_all_at_once.
+Dolores Watson only 3?
Thank you, this is an excellent video for ones who have experience with other programming languages, and want to learn the basics of Python quickly.
Thank you :) I'm happy it helped
If you ran into an error for spot.toString (), try changing in Dog:
def toString(self):
return super(Dog, self).toString() + " Her owner is {}.".format(self.__owner)
This worked for me, thx 2 stackoverflow for the answer ☆♡☆
Anna, you nailed, it thanks! Took me a long way toward understanding how to manage the diff between local and super.
Thank you for the comment... really helped me out as it was broken for me and now i can understand it :)
I usually don't comment on videos, but this tutorial seems very helpful. I just found your channel and I can already tell this is a great channel! I dropped a big thumbs up on this video and even subscribed because of this video! Keep up the good work man!
Thank you for the nice compliment :) I hope you enjoy the other videos
Totally agree!!
th-cam.com/video/25gvhzRN3ns/w-d-xo.html
31:57 needs a test_file.close() before os.remove("test.txt"), otherwise it's throwing a "file being used by another process" error
exactly
One question:
In Dog's toString(),
how is it possible that you were allowed to directly access 'Animal's privates,
such as __name, __height, __weight, __sound?
'Animal's privates are supposed to be not accessible by the derived class 'Dog',
and that's why you had to define Animal member functions get_name(), get_height(), get_weight() and get_sound().
I tried your code as-is,
and got the expected error (ie, something like 'Dog has no member named __name').
By the way,
Excellent Video, Derek! :)
So, how did you solve that problem? The same happens with me.
+Rúben Borralho in case you didnt see the bottom solution:
you have to change self.__name in the dog toString to self._Animal__name and repeat for the other variables that come directly from animal
That way you can access the private variables.
+Justin Lopez Thanks!, I had the same problem
+Justin Lopez
I had the same problem. Thanks!
+Justin Lopez
I had the same problem. Thanks!
ALTERNATIVE WAY TO INPUT:
name = input("What is your name? ")
print(name)
Hope that helps :")
The last 13 min was the hardest
It sure was, still, don't understand classes...
this comment currently has 13 likes
@@ludviglindholm8314 Classes (or Object -Oriented Programming) is a methodology that we use in programming to model real world objects. Think how to describe an apple to a computer. You can give characteristics and give it actions. Classes are to nouns, as functions are to verbs and variables are to adjectives. Take that with a grain of salt though. Thinking of a video game character also helps you imagine it. The character would be your class. Health and Defense are variables and when your character moves and takes damage are functions.
Yeah, you don't understand OOP in 13 minutes don't worry just do lots of examples. OOP is a great methodology for organizing your variables and functions and is very helpful for really large projects
This video I think is for people who already know the fundamentals in another language but don't know python, if you don't understand oop at all then you should watch a more detailed video on that.
More enjoyable when played at 2x
That's funny :)
lol
Lmao you want to learn programming from Eminem?
Hey Derek, can you please make a video series on how to make Android apps in C# using Visual Studio. A lot of people need it. Please try your best. If not can you suggest some great sources for it...
no
Shut up Putin xD
Putin is all over Internet, and disturbing Programmers. 😂
Order of arithmetic evaluation
BODMAS = Brackets, Orders, Division, Multiplication, Addition then Subtraction
i like the speed of your talk. Count me in as a subscriber..
Thank you very much :)
thank you sir...and maintain this speed of teaching...sometimes it is very fast that i need to pause your video...but it's ok...i learn lot's of new thing in your great tutorial...thank you again sir...
Thank you very much :) I'm very happy that you liked it
Derek Banas your always welcome sir...
Derek Banas Three year old video and still replying to comments. - respect
Chris Spears yesss...
th-cam.com/video/gGVqzl0V1xw/w-d-xo.html
After years of C, I find Python's structure quote annoying D:
I already miss all the semicolons and braces.
Theta Scorpii Is that a "why?" ._. Anyway it's because I'm just used to using them. Every time I write a statement in Python I put a semicolon unconsciously, it's annoying lol.
prepareuranus I think you have got habit of C and C++ programming in which we have to put Semicolons and braces for defining or declaring ;) ! never mind , it happens .
prepareuranus The semicolons and braces in those languages are seen as redundancy in Python. The indented structure provides what both semicolons and braces do in those languages.
prepareuranus I agree somewhat. I don't miss the semicolons. However, I'd gladly trade indentation for braces. Guido has said that will never happen, though.
Good it isn't necessary
I am working my way through this video. This is my first serious foray into programming and I just want to say "Thank you!". Very well laid out and paced. I am looking forward to going through your videos on C# and c++ next!
I'm watching this from the womb and watching at 18x speed. Now I own the facebook and goggles.
That's funny :)
hahahahahaha that a cool humor :D
👓
Darn! I should have done that
What did you do with those goggles ? Sleep and imagine that you owned facebook ?
Awesome Video @Derek. Thank you!
Small error: at 39:30, change "__name" into "get_name()" to avoid error . Same goes for attributes "height", "weight" and "sound", except the newly created attribute "__owner".
infinity = 0
while infinty >= 0:
print('Pokemon Go')
infinity += 1
Beautiful.
Challenge extended, challenge accepted, This quickly gets out of hand:
#! /usr/bin/python3
i = 1
s="Gotta catch 'em all" + " "
while i
and when you have a continuous thing like that, you can do ctrl c to stop it
while True:
print('Pokemon Go')
I'm a beginner C programmer and you forgot a few lines:
#include
int main(void) {
unsigned long long infinity=0;
while (infinity > 0) {
printf("Pokémon Go
"); }
exit(0); }
Or even more efficient:
#include
int main(void){
while (1) {
printf("Pokémon Go"); }
exit(0);}
Also, idc that I'm in a python programming video, I'm learning C atm dammit.
Something important to note is that he accesses private variables from child class which should not be allowed in proper OOP practise. I think Derek probably uses an older version of Python but in 3.6.3 you have to set the instance variables as protected not private to access them from child class and this is done by starting the variable names with single underscores.
Learn C++ in one video: 3732hrs
Finished the whole thing. I've got 334 lines in my text editor. Thank you very much for making this. I now feel comfortable enough with python that I can use it for my projects in school.
Arend Peter Castelein You're very welcome :) I'm happy that I could help.
now if only i could download this all into my head permanently...
That's funny :)
It's called remembering
Ciprian Ciprian LOL
Anyone wonder if Derek is actually a bot that senses funny comments?
just get a notebook and note down every single point you find is importent for you.
Crisp and comprehensive at the same time. An awesome jumpstart for anyone who is familiar with programming constructs and syntax in general, but not familiar with Python at all. Super!!!
Thank you very much :)
"continue, continue, continue, i agree..."
every EULA ever.
ATTENTION:
For those planning to put "Python Programming" on their resume after watching this video, you must be DELUSIONAL! Even though this video does an amazing job of covering the general basics, it does just that: it covers the BASICS. There is wayyyyyy more to python. In your job interviews, the employer will ask you if you have any experience in particular python fields like Python Networking, Data Science with Python, Machine Learning Systems with Python, Black Hat Python, etc. No one will hire you just because you know how to create a loop, a list, or a class in Python! So deflate that programming ego of yours or else you will face a big world of hurt when the employer decides you are not right for that amazingly high paid programming job. That will be an opportunity flushed down the toilet all because you thought that 1 video was enough to teach you a whole programming language. You will need at least need a year or two of consistent python programming experience before an employer can take you seriously.
Surfbuddy24 I agree. This tutorial covers the basic syntax of the language, but doesn't teach the logic behind what makes for a good python program.
From my experiences, if one masters the basics, they become Tim Duncan.
My Mum told me I have to learn programming, so here I am. I'm 50 by the way.
Have fun
Não entendi nada!!!!
Paulo Silva talk fucking english
Friemeltjes wut
You're 50 and you let your mom tell you what to do?
Am I the only one who did not skip any second of this video?? Very explicit and clear. I already have C programming and VB. Net experience but it is my first python tutorial. I have now an idea of how I can assimilate all these languages. Thanks Derek
Thank you for watching the whole video :) It is sad that most people watch just a few minutes
For me, I use tutorials to know about something precise. I mean if I have a project or problem to resolve and that I am blocked, I look for specific video and in a specific time. But this one was different because it is like a lesson at school. I really enjoy it and I am willing to learn more about it by using the other languages I already knew.
I'm very happy to hear that. I put a lot of time into making these videos and it is great when people enjoy them :)
Did it work? Do I know Python now?
WOok2a yes..
print('Yeah you should')
If you practice everything you just saw him do - then yes.
In the Dog::Animal example, it won't let me access __name, __height, __weight, nor __sound from the derived class toString() def, probably since they are private. How do we make them protected, like in C++, so the derived class can access ?
(EDIT): I'm new to Python, but I just read a bit of the docs about the issue. It would seem that the Python name-mangling mechanism that is used to fake private class data, applies to the *current* class - so such variables would always have a name unique to their definition at their own level in a class hierarchy. Animal::__name becomes _Animal__name, but Dog::__name becomes _Dog__name. This can be seen by expanding objects in the debugger.
Is there any way around being forced to use the base class's getter/setter functions from the derived class (and still have private data) ? That would seem inefficient.
(EDIT #2): I figured out a way ! - in the derived class, just use the base class mangled name directly. So to access the __name variable from the Dog class, that was declared in the Animal class, just use _Animal__name ! Do you think this breaks any rules ?
Also, how did you code compile with Dog::toString() as shown ? (I'm using Python 3.4.2 on the pyCharm IDE on Windows 7 64 bit)
agnichatian Thank you for posting all that you discovered! The rule that is broken is the rule of encapsulation. It is almost always best to use the getter and setter methods that are inherited by subclasses, but it is also nice to understand the work arounds. Just make sure you heavily comment your code if you ever break rules. Others that see your code may not understand what you did.
Derek Banas
Yes, that is why I was so concerned about it. The docs clearly show that there is no enforcement of the encapsulation in Python. Coming from a C++ perspective, this is dangerous and I'll bet causes a lot of unreliable code out there. The fact is that many will not maintain an engineering discipline when writing and using classes ! Thanks for tie video.
That was very informative, thank you for creating the video!
Mike Notarnicola Thank you :) I'm glad you liked it.
I am coding a text number guessing game, using the information I gained from your video :-) Still working on it. trying to figure out what statement to use so that if a == b to go back and redo it, so there will be no duplicate numbers.
Abbie, Thank you for your reply! I am working on the game, slowly but surely. Now I am trying to throw a Raspberry Pi into the mix.. Turn on a red LED for a guess that is too high and a yellow LED for a guess that is too low and a green LED for the right guess..
Abbie Wolff It was a Christmas gift from my wife! :-)
Abbie Wolff I got the whole kit and kaboodle.. I got this kit www.ebay.com/itm/Sunfounder-Project-Super-Starter-Kit-for-Raspberry-Pi-Model-B-40-Pin-GPIO-Board-/151460909119?pt=LH_DefaultDomain_0&hash=item2343c6103f and the Raspberry Pi kit with the camera, jumpers, bread board etc
I SOOO appreciate you taking the time to edit your video. Very helpful and, unlike many tutorial videos, cutting to the most interesting and important parts. Thank you! Love what you did there.
Thank you :) Heavy editing is what makes me different
Ater being with c++, im finding simplicity of the python difficult.... u ppl got anything to say?
I can understand that. If you get really good with anything the alternatives of any sort will seem wrong in one way or another.
yeahh true
karthikeyan mg right brother...i am programmer who is familiar with c c++ and java syntex...so sometimes i find difficulties to write code in python language...but at the end python is also great language for development of anything...
i so feel you bro !
+MPK MPK Well, Python is nice and easy and all, but it's so *incredibly* slow compared to something as low level as C, or C++ that I kind of doubt it.
coming from a php background( dont hate me :'l ) i noticed when you appended "onions" in grocery list the concatenated to_do_list was also updated? does that mean to_do_lists variable only has a reference to the grocery_list variable??? pls help
Yes. Python doesn't duplicate data if it doesn't have to, so instead of a copy of the grocery_list being added to to_do_list, to_do_list points at grocery_list. If you wanted to copy all the data, you would slice grocery_list like this: to_do_list = [other_events, grocery_list[:]]
Other methods are:
to_do_list = [other_events, list(grocery_list)]
Or use the copy module and:
import copy
to_do_list = [other_events, copy.copy(grocery_list)]
If you need to copy objects, you can use
newObject = copy.deepcopy(oldObject)
wow. thank you for the thorough explanation. thats some knowledge i think i wont find else where. thanks.. i love how that makes python versatile.
Tips & Tricks:
Click on video settings ->choose "Speed" -> Change to 0.5
This will fix your problem ! ;)
You misstyped 1.5 :P Atleast my problem was that he was so slow idk about you tho.
and btw why your comment says tips & tricks when there is only 1 tip / trick ._.
Is there a tip or trick that can make him enunciate better? And maybe take breaks between words? Some people just can't learn not to mumble. :(
Have to say, that the best channel for a programmer
fast learning, clear and without too much hour of explanation around to explain the beginner's topics
Derek, you save my Degree exams, my professional learning, big fan!
Thank you for the compliment :)
Honest question
Why use sys instead of input?
I have no idea why. You can do type conversions easier with input.
my point EXACTLY!
Same! input() wud have been way easier n faster
They are different, and depending on what kind of program you're creating you should evaluate which one is more efficient.
th-cam.com/video/25gvhzRN3ns/w-d-xo.html
C = a + b
Print(C)
*_MOM GET THE CAMERA, I MADE A CALCULATOR!!!_*
That's funny :D
I'm really strugling with understanding the purpose of the Object part, at setters and getters. At some of them the (self...) just poops up in pink colour and at others I have to manually put it in. Is there any difference between popping up and putting it in manually ?
Some advice from any of you would be greatly appreciated, a noob trying to be a future programmer here, THANKS !
Awesome video! I have learned Java, HTML/CSS/JavaScript, and I wanted to know how to program C++ and python. Because of this video, I was able to learn python, and learn c++ all in one video. Thanks a lot Derek!
Thank you :) I'm very happy that I could be of help
Sheshank Shankar I need help with raspberry pi
Thank You Derek Banas. Love From Nepal :)
Thank you :)
Abiral Sangroul
th-cam.com/video/3g6iqVsv32I/w-d-xo.html
26:35 INPUT: name = input("What's your name? ")
what's all the fuss about?
+GPC™ ..as per your code, the user is expected to enter the name within quotes (eg: "sudheer"). but user may not know this. So, instead, use name=raw_input("enter your name"). this works better when the user is expected to enter a string.
In the old version of python this was the case. However in the newer version: input('What is your name?') works perfectly fine and now you don't really have to use raw_input.
I absolutely love the format of these videos. "Here's the information. Done." Can't wait to watch some of the others.
Thank you :) I try not to waste time
Hi Derek ,great video, I went thru most of it. I got stuck with : AttributeError: 'Dog' object has no attribute '_Dog__name'
Do you have a clue as to what it means?
I had the same issue. Does anyone know how to solve this?
If this is referring to the to_string() function in the dog class I found the answer. In the cheat sheet in the description the code is different to the video. Instead calling 'self.__name' you call the animal getter method 'self.get_name()'.
it usually takes ppl 1hr+ to explain classes. this guy did it in 11mins **claps**
Yep
Thank you. It helped me a lot in just 1 Hour :)
I'm happy I could help :)
For emptiness= existence
If Into_the _void =(every thing)
Action =(Learn: helplessness)
Nice video,but can't we just do Input() instead of sys.stdin.readline?()
That's just one of the many things this tutorial does wrong. If you want to learn python, this is not the right place to do so.
@@Rawing77 Yeah, this video is more of for people who know python and needs to be reminded of a specific topic.
can you make game exploits with this I already have an injector
I was searching for the news story about a man eaten by a python in indonesia, and i ended up watching this instead..divine calling to be a programmer?
That's funny :)
hmm, possibly a dictator
@@derekbanas divine called him to right place,,isn't it? :)
this is probably the most accurate,precise and run with perfect speed computer tutorial! Real programmers will love this. This is how fast computer tutorials should be
Thank you :) I'm very happy that you enjoyed it
But what I don't understand is why someone older than 65 cant have a birthday party :3
That's funny :)
Senescence strikes again.
O my god, Phyton is so easy......(as compared to JAVA) 😀
I agree :)
ikr
True bud
Java really isn’t that hard. It’s just annoying having to type so much hahahaha
all depends on what you what to do. you should really understand what you want to do and what common tasks certain langs are used for.
Before this video I didn’t know how to code. After watching this, I have now accepted a job as a software engineer at Facebook!
Thanks Derek!
Absolutely Brilliant! Your way of explaining is like "Keep it simple, cut to the chase". Even a beginner like me understood up to 80% of the video in one go. Thank you sir! and looking forward to see more. :-)
Thank you :) I'm very happy that it helped
wow it's so close to java it's scary lol. nice video! helped me prepare for my interview.
suppose it depends on what you compare with :/
Lol it's nothing like Java, Java is compiled and Python is interpreted that alone makes them a lot different from each other, if you're talking about the syntax you'll be pleased to know that a lot of languages have a similar syntax, Java and Python are both C based languages so naturally they'll have a similar syntax.
Gherbi Hicham I meant the syntax is similar, yes. I understand the differences.
Golemstorm In that case see C++, C and JavaScript's syntax out there, it's almost like Java's with the braces and all.
Lel, java is not compiled, it has an interpreter, JVM which is making bytecode on the fly
How to open preferences in windows?
how to do ANYTHING, in windows
Alt + Ctrl + S or from the list choose settings
Install Gentoo. It solves all my technical problems.
Python on windows is more simple now
When you spend the year learning java only to find out the day before the final that your exam is in python... 😔🤙
How was it? Did you passed?
@@robertgardzinski6424 Yea! I actually did really well; i got a 9/9 (weird scoring lol).
This video was actually a huge help, haha
Glad to hear that. :)
I’m Australian so my order of operations goes a little different to America’s I’m pretty sure
B-Brackets
O-Other (eg. percent)
M-Multiplication
D-Division
A-Addition
S-Subtraction
to print a name you can also do :
name = "Stel"
print("My Name is %s"%(name))
that works the same (python27) :p
Thank you for sharing :)
np
Ok
name = "Jeff"
print("my name is {}" % (name))
Python 3.6 and newer also feature fstrings.
Example:
name = 'Gunnar'
age = 36
print (f'{name} is {str (age)} years old.')
I cannot get the toString function to work when using it as a “Dog” method.
Exactly, if you follow the example as it is here IT WON'T WORK. Try to get rid of the say __.xxx and replace them with self.xxx, that will make it work.
800 people were so excited about the Captain Cold reference that they missed the like button!!!
That's funny 🤣
This tutorial is actually really bad. Things like using sys.stdin.readline() instead of input(), defining private variables in a class, using setter and getter methods, etc. etc. are all horribly unpythonic or even borderline incorrect. This tutorial teaches you how to write Java in Python. It does not teach you Python.
@@Rawing77 What's so bad about defining private variables in a class?
I saw this video 6 years back and started doing python programming. Now in 2021 still I'm sharing this video with my friends, students and colleagues to start their career in python.
Thanks derek
- Rohit
Thank you for sharing it :) It is very nice to know that I’ve helped so many people
PYTHON IS LOVE PYTHON IS LIFE
Creator of Python IS A HALF JEW
yuki.la/q/719719
lol pretty weird Hitler loves Python hence life and love? Pablo is that true? Python's designer is Guido van Rossum and he is not in your list.
ghe mg udavun Python la
Was sagst du alter
he's Dutch, like me :D
Ok someone has to help me... I'm at about 40 min in the video and when I try to print spot.toString I get an error: AttributeError: 'Dog' object has no attribute '_Dog__name'
Everything I've done is exactly as in the video but for some fucing reason Spyder thinks I'm calling _Dog__name instead of __name. Wtf do I do?
9213ify i dont know how to help you but i know that some Version of python Handel things different
(they are not always backwards compatibility)
Close, I was using 3. The issue is trying to call a private variable.
I had the same issue and this is the solution. Derek copy-pasted the toString method from the Animal class, but he left the attributes as self.__name, self.__height etc.
I don't really know how it worked for him but I have to call the Animal getter methods to get values for those variables. My guess is that even though we're inheriting from Animal class, we still can't access the private variables directly from the Dog class.
If you look at the cheat sheet in the video description, you'll see Derek also uses getter methods within the Dog toString method - for some reason he hasn't shown this in the video, but that's how to get around that problem
THIS. yes.
thank you!, i think he just edits out a lot of stuff from the video to be shorter, but in doing so he edited his fix to this, since you can even see the jumpcut after he clicked enter
is it good to learn to languages at the same time ? like c and python ?
If that keeps you interested in learning yes it is fine
Why would anyone dislike this video? Derek Banas, you rock! I remember binge watching all your old meta programming videos!
Thank you very much :)