Python Programming

Поделиться
HTML-код
  • Опубликовано: 9 янв 2025

Комментарии • 6 тыс.

  • @derekbanas
    @derekbanas  5 лет назад +75

    Learn in One Videos for Every Programming Language
    Subscribe to Bookmark them: bit.ly/2FWQZTx
    C++ : ruclips.net/video/Rub-JsjMhWY/видео.html
    Python : ruclips.net/video/N4mEzFDjqtA/видео.html
    Java : ruclips.net/video/n-xAqcBCws4/видео.html
    PHP : ruclips.net/video/7TF00hJI78Y/видео.html
    MySQL : ruclips.net/video/yPu6qV5byu4/видео.html
    JavaScript : ruclips.net/video/fju9ii8YsGs/видео.html
    C# : ruclips.net/video/lisiwUZJXqQ/видео.html
    HTML5 : ruclips.net/video/kDyJN7qQETA/видео.html
    CSS3 : ruclips.net/video/CUxH_rWSI1k/видео.html
    JQuery : ruclips.net/video/BWXggB-T1jQ/видео.html
    TypeScript : ruclips.net/video/-PR_XqW9JJU/видео.html
    ECMAScript : ruclips.net/video/Jakoi0G8lBg/видео.html
    Swift : ruclips.net/video/dKaojOZ-az8/видео.html
    R : ruclips.net/video/s3FozVfd7q4/видео.html
    Haskell : ruclips.net/video/02_H3LjqMr8/видео.html
    Handlebars : ruclips.net/video/4HuAnM6b2d8/видео.html
    Bootstrap : ruclips.net/video/gqOEoUR5RHg/видео.html
    Rust : ruclips.net/video/U1EFgCNLDB8/видео.html
    Matlab : ruclips.net/video/NSSTkkKRabI/видео.html
    Arduino : ruclips.net/video/QO_Jlz1qpDw/видео.html
    Crystal : ruclips.net/video/DxFP-Wjqtsc/видео.html
    Emacs : ruclips.net/video/Iagbv974GlQ/видео.html
    Clojure : ruclips.net/video/ciGyHkDuPAE/видео.html
    Shell : ruclips.net/video/hwrnmQumtPw/видео.html
    Perl : ruclips.net/video/WEghIXs8F6c/видео.html
    Perl6 : ruclips.net/video/l0zPwhgWTgM/видео.html
    Elixir : ruclips.net/video/pBNOavRoNL0/видео.html
    D : ruclips.net/video/rwZFTnf9bDU/видео.html
    Fortran : ruclips.net/video/__2UgFNYgf8/видео.html
    LaTeX : ruclips.net/video/VhmkLrOjLsw/видео.html
    F# : ruclips.net/video/c7eNDJN758U/видео.html
    Kotlin : ruclips.net/video/H_oGi8uuDpA/видео.html
    Erlang : ruclips.net/video/IEhwc2q1zG4/видео.html
    Groovy : ruclips.net/video/B98jc8hdu9g/видео.html
    Scala : ruclips.net/video/DzFt0YkZo8M/видео.html
    Lua : ruclips.net/video/iMacxZQMPXs/видео.html
    Ruby : ruclips.net/video/Dji9ALCgfpM/видео.html
    Go : ruclips.net/video/CF9S4QZuV30/видео.html
    Objective C : ruclips.net/video/5esQqZIJ83g/видео.html
    Prolog : ruclips.net/video/SykxWpFwMGs/видео.html
    LISP : ruclips.net/video/ymSq4wHrqyU/видео.html
    Express : ruclips.net/video/xDCKcNBFsuI/видео.html
    Jade : ruclips.net/video/l5AXcXAP4r8/видео.html
    Sass : ruclips.net/video/wz3kElLbEHE/видео.html

    • @jakubkochan4562
      @jakubkochan4562 5 лет назад +5

      As many languages you know so many times you are a human...

    • @Phenomatron
      @Phenomatron 5 лет назад +5

      Nerrrrrrrrrrrrrrrrrrrrrrrrrrrrddddddddddddddddddd....Thank you.

    • @jaymesc4436
      @jaymesc4436 4 года назад

      Jesus christ litarly you are the jesus christ of tutorials

    • @vishakhakumar1782
      @vishakhakumar1782 4 года назад +1

      such a freckn big list this knowledge could last me for years thnks

    • @freedomofinformationnone2874
      @freedomofinformationnone2874 4 года назад

      What I need to know is: HOW DO YOU LEARN SO MANY PROGRAMMING LANGUAGES?

  • @ThanosSofroniou
    @ThanosSofroniou 9 лет назад +4393

    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

    • @albertmatei8701
      @albertmatei8701 9 лет назад +36

      in the description psssst I'm sure you know already so we'll keep it a secret

    • @ThanosSofroniou
      @ThanosSofroniou 9 лет назад +65

      +Albert Matei Haha I saw the description but the links open a new tab...

    • @albertmatei8701
      @albertmatei8701 9 лет назад +62

      +Thanos Sofroniou your just looking out for all of us, a true hero😢

    • @MohamedChehaibi
      @MohamedChehaibi 9 лет назад +62

      +Thanos Sofroniou Heaven is filled with people like you.

    • @goldenShelf
      @goldenShelf 9 лет назад +6

      +Thanos Sofroniou An hero

  • @pabloescobanjo4553
    @pabloescobanjo4553 6 лет назад +20

    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

  • @sureshsubramaniam5515
    @sureshsubramaniam5515 5 лет назад +16

    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!

    • @derekbanas
      @derekbanas  5 лет назад +1

      Thank you for the nice compliment :)

  • @pamulyadav4275
    @pamulyadav4275 6 лет назад +414

    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

    • @matth3049
      @matth3049 6 лет назад +1

      Pamul Yadav what does file I/O do or mean

    • @axel-adrienrobert1145
      @axel-adrienrobert1145 6 лет назад +2

      It is the shorthand for « File Input/Output », which is the creation, deletion, opening and reading, opening and writing part for Files.

    • @gabecoelho647
      @gabecoelho647 6 лет назад +6

      Bless your soul! Thanks!

    • @innushaik2713
      @innushaik2713 6 лет назад

      grt job yadav

    • @m33man
      @m33man 6 лет назад +2

      You are the real MVP

  • @johannesseikowsky6789
    @johannesseikowsky6789 8 лет назад +70

    that was a great tutorial. I liked the speed of it. No blablabla, just straight to the points. thank you.

    • @derekbanas
      @derekbanas  8 лет назад +16

      +Johannes Seikowsky Thank you :) I do my best to not waste time

    • @aleksa6254
      @aleksa6254 7 лет назад +10

      But really. Other lecturers spent half an hour on the print command. geez

  • @typhoon20724
    @typhoon20724 8 лет назад +178

    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)

    • @EMMarcel
      @EMMarcel 8 лет назад

      yeah.. figured that out after awhile too..

    • @Ashokgadeking
      @Ashokgadeking 8 лет назад +19

      This needs to be on top

    • @justynlee8729
      @justynlee8729 8 лет назад +43

      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.

    • @jdhenckel2
      @jdhenckel2 8 лет назад +3

      Actually it's standard to use __repr__ instead of toString. So you can simply, do -- print cat, dog

    • @jacobdwyer5619
      @jacobdwyer5619 8 лет назад +3

      thanks that was driving me cray

  • @techontrack4250
    @techontrack4250 7 лет назад +49

    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

  • @ralphj8273
    @ralphj8273 8 лет назад +3029

    print("hello world")
    hello world
    MOM AM A PROGRAMMER

    • @SkiNNyPoNNy
      @SkiNNyPoNNy 8 лет назад +15

      Z Button lol

    • @DihelsonMendonca
      @DihelsonMendonca 8 лет назад +65

      You produce more with less code. That´s power !

    • @DihelsonMendonca
      @DihelsonMendonca 8 лет назад +2

      DailyKidness PRINT: "Yes, you can"

    • @DihelsonMendonca
      @DihelsonMendonca 8 лет назад +14

      No! in BASIC:
      10 PRINT "Hello World!"
      20 GOTO 10

    • @ValoriumStudios
      @ValoriumStudios 8 лет назад +26

      public static void main (String [] args){
      System.out.println("NO!!");
      }

  • @arunachalamramaswamy5104
    @arunachalamramaswamy5104 5 лет назад +283

    this is a method to learn a language if u already know a programming language

    • @bra5081
      @bra5081 5 лет назад +56

      It's a good method to refresh your memory when you know multiple languages and you have to prepare for a job interview

    • @subramanianchenniappan4059
      @subramanianchenniappan4059 5 лет назад +2

      @@bra5081 yes

    • @subramanianchenniappan4059
      @subramanianchenniappan4059 5 лет назад +11

      its not possible to teach programming to a newbie in 45 minutes which is the length of the video

    • @mumblic
      @mumblic 5 лет назад +23

      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! ;-(

    • @inafridge8573
      @inafridge8573 5 лет назад

      Yeah that's what I was looking for!

  • @linuxmel
    @linuxmel 7 лет назад +1

    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)

  • @rahulghosh5857
    @rahulghosh5857 7 лет назад +5

    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"

    • @derekbanas
      @derekbanas  7 лет назад +1

      That's awesome! Thank you :) I'm happy it helped. If you want to learn more I teach Python through problem solving here ruclips.net/video/nwjAHQERL08/видео.html

  • @syraphimgaming6281
    @syraphimgaming6281 8 лет назад +1129

    I was looking for a one-pot pasta recipe and ended up watching this entire video.

  • @oateurman
    @oateurman 9 лет назад +9

    BY FAR, the best video to dive in Python out there. (forget the 11 hours tutorial).
    Amazingly efficient.

    • @derekbanas
      @derekbanas  9 лет назад +2

      Assan Sanogo Thank you for the nice compliment :)

  • @jasealpers
    @jasealpers 5 лет назад +10

    Best programming tutorial I've ever watched. Wonderfully succinct! Thank you for putting this together!

    • @derekbanas
      @derekbanas  5 лет назад

      Thank you for the compliment :) I'm happy I could help

  • @jordanscott709
    @jordanscott709 9 лет назад +4

    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!

    • @derekbanas
      @derekbanas  9 лет назад +1

      +Jordan Scott You're very welcome :) I'm glad you liked it enough to watch it all.

  • @dukenukem1137
    @dukenukem1137 8 лет назад +125

    Very very good tutorial, not slow like many others, and it's mostly for people coming from other languages.

    • @derekbanas
      @derekbanas  8 лет назад +18

      Thank you :)

    • @poconofriend777
      @poconofriend777 7 лет назад +7

      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.

    • @aryanbhattacharjee9673
      @aryanbhattacharjee9673 7 лет назад +1

      nope u should start from c# rather than python

    • @siphor4402
      @siphor4402 7 лет назад

      Lmao I’m coming from HTML

    • @ChuyFlores063
      @ChuyFlores063 6 лет назад

      Hahahaha

  • @MrMindShattering
    @MrMindShattering 7 лет назад +1

    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!

    • @derekbanas
      @derekbanas  7 лет назад +1

      Thank you :) I'm glad you liked it

  • @nikolaikalashnikov4253
    @nikolaikalashnikov4253 8 лет назад +9

    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 ?

  • @pinkhairedgnom4018
    @pinkhairedgnom4018 10 лет назад +8

    I love finding incredible channels on RUclips. Your mind works on a higher level. Thanks for the entertaining, high quality education.

    • @derekbanas
      @derekbanas  10 лет назад

      Pinkhaired Gnom Thank you for the very nice compliment :) You're very welcome

  • @luvianp4984
    @luvianp4984 7 лет назад +25

    This video is really good and fast for someone who already know other languages but want to speed things up

  • @withinmyself
    @withinmyself 6 лет назад +5

    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!

  • @123Mrchoy
    @123Mrchoy 8 лет назад +6

    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!

    • @derekbanas
      @derekbanas  8 лет назад +1

      +123Mrchoy Thank you :) I'm glad it helped.

    • @Yeetamusprime
      @Yeetamusprime 8 лет назад

      +Derek Banas You are the best you helped me get an A on my test thank you!!!!

    • @Popopatop
      @Popopatop 8 лет назад

      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

  • @kparag01
    @kparag01 7 лет назад +56

    Fonts , sound , code every thing perfect

  • @michaeljacksonator
    @michaeljacksonator 9 лет назад +271

    Okay, so can i put Python in my resume now?

    • @aaroncode2634
      @aaroncode2634 9 лет назад

      +Gothangelik where did you took the course ?

    • @nttwashere
      @nttwashere 9 лет назад +60

      +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.

    • @moofymoo
      @moofymoo 9 лет назад +7

      +michaeljacksonator if you understand difference between programming and programming language feel free to add python. everyone who can program can write python.

    • @mikkeb7578
      @mikkeb7578 7 лет назад +22

      Well you certainly can't put "understand humor" in your resume...

    • @miguelcastillo1742
      @miguelcastillo1742 6 лет назад +11

      I know this was sarcasm, but people do not get it lol

  • @alexanderwicked8990
    @alexanderwicked8990 7 лет назад +278

    Comming from Java Python looks and feels like a stroll in a park breathing a fresh ozone air after summer rain...

    • @derekbanas
      @derekbanas  7 лет назад +50

      Python is definitely a dream language I agree :)

    • @taekwondoista3697
      @taekwondoista3697 6 лет назад +6

      Breathing in that good ass prana

    • @Bloodcurling
      @Bloodcurling 6 лет назад +50

      You do not want to breath in ozone

    • @harineemosur6530
      @harineemosur6530 6 лет назад

      Had same feeling after years of Java

    • @JuniorSantiago3x
      @JuniorSantiago3x 6 лет назад +2

      thanks for the warning, I def won't learn it now

  • @nicholasberglund
    @nicholasberglund 7 лет назад +5

    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!

    • @derekbanas
      @derekbanas  7 лет назад +1

      Thank you for all the nice compliments :) It is always great to hear that I've helped!

  • @doloreswatson6269
    @doloreswatson6269 9 лет назад +69

    Drink 3 energy drinks, smoke 3 joints and watch this video without stopping it. Power learning

  • @balintszalay1726
    @balintszalay1726 7 лет назад +10

    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.

    • @derekbanas
      @derekbanas  7 лет назад +1

      Thank you :) I'm happy it helped

  • @zuhairmehdee
    @zuhairmehdee 5 лет назад +104

    The lack of semicolons is disturbing and it's weirding me out.

  • @gauravpangarkar
    @gauravpangarkar 7 лет назад +303

    I generally fasten the speed of any tutorials on YT
    but here for the first time i have to slow down the speed

  • @pseudonym4893
    @pseudonym4893 10 лет назад +6

    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.

    • @derekbanas
      @derekbanas  10 лет назад +2

      Pseudo Nym You're very welcome :) I'm very happy that I could help.

  • @xinwilson
    @xinwilson 7 лет назад +10

    31:57 needs a test_file.close() before os.remove("test.txt"), otherwise it's throwing a "file being used by another process" error

  • @COMREdesign
    @COMREdesign 5 лет назад +34

    This is so interesting that I paused my Netflix and watched this for whole 44min

    • @derekbanas
      @derekbanas  5 лет назад +4

      Thank you very much :)

    • @arunaagt8229
      @arunaagt8229 4 года назад

      @@derekbanasit's like we getting benifit but the teacher saying thanks.

  • @Kailamptey
    @Kailamptey 6 лет назад +85

    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.

    • @derekbanas
      @derekbanas  6 лет назад +21

      I agree 100% !!! It is also awesome that RUclips has been pushing more education channels lately

    • @Kailamptey
      @Kailamptey 6 лет назад

      Yep, great channel btw, subscribed.

    • @SirensOfFire
      @SirensOfFire 6 лет назад +7

      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 ×_×

    • @matindi
      @matindi 4 года назад

      I'm 15

    • @minecute...9484
      @minecute...9484 3 года назад

      ruclips.net/video/25gvhzRN3ns/видео.html

  • @Kixxxxxxx
    @Kixxxxxxx 9 лет назад +23

    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! :)

    • @rubenborralho4980
      @rubenborralho4980 9 лет назад +4

      So, how did you solve that problem? The same happens with me.

    • @baleia
      @baleia 9 лет назад +1

      +Justin Lopez Thanks!, I had the same problem

    • @Rickeeey1
      @Rickeeey1 9 лет назад +1

      +Justin Lopez
      I had the same problem. Thanks!

    • @Rickeeey1
      @Rickeeey1 9 лет назад +1

      +Justin Lopez
      I had the same problem. Thanks!

    • @Rush_racing
      @Rush_racing 8 лет назад +4

      +Rúben Borralho this is how I changed my code:
      def to_string(self):
      return "{} is {} cm tall and {} kg and say {}. His owner is {}".format(self.get_name(), self.get_height(),self.get_weight(),self.get_sound(),self.__owner)

  • @ravimaurya2533
    @ravimaurya2533 8 лет назад +54

    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...

  • @shaofuhuwu709
    @shaofuhuwu709 8 лет назад +156

    You covered more in 40 minutes than in a course I did in my university for 2 months, 2 hours a week lol

    • @derekbanas
      @derekbanas  8 лет назад +30

      Thank you for the compliment :)

    • @mildot5482
      @mildot5482 6 лет назад

      I get it like sarcasm. .not compliment

    • @shawnruby7011
      @shawnruby7011 6 лет назад

      Tu ne parles pas anglais

    • @user-ll6oh1uu7o
      @user-ll6oh1uu7o 6 лет назад

      Shawn Ruby Tu es tres gentil

    • @shawnruby7011
      @shawnruby7011 6 лет назад

      Si il ne comprend il devrait vouloir savoir

  • @techontrack4250
    @techontrack4250 7 лет назад +63

    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!

    • @derekbanas
      @derekbanas  7 лет назад +2

      Thank you for the nice compliment :) I hope you enjoy the other videos

    • @JoseLopez-mt2og
      @JoseLopez-mt2og 6 лет назад +2

      Totally agree!!

    • @minecute...9484
      @minecute...9484 3 года назад

      ruclips.net/video/25gvhzRN3ns/видео.html

  • @Secretzstolen
    @Secretzstolen 6 лет назад +3

    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 ☆♡☆

    • @DCHomeDan
      @DCHomeDan 5 лет назад

      Anna, you nailed, it thanks! Took me a long way toward understanding how to manage the diff between local and super.

    • @waaaaaaaayyyyyynnnee
      @waaaaaaaayyyyyynnnee 4 года назад

      Thank you for the comment... really helped me out as it was broken for me and now i can understand it :)

  • @bobo0202
    @bobo0202 6 лет назад

    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!

  • @sravantatipala
    @sravantatipala 4 года назад +3

    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".

  • @Zwerggoldhamster
    @Zwerggoldhamster 9 лет назад +135

    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

    • @Compl.exemotions
      @Compl.exemotions 8 лет назад +1

      code.org and code.hs . finish those super simple courses and come back

    • @S9V9G3
      @S9V9G3 8 лет назад +1

      lol... Im still a little bit confused and have been coding PHP, JQUERY and JavaScript for a year.. I should pay more attention xD

    • @swellbot5738
      @swellbot5738 8 лет назад +15

      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

    • @freshmarcent2741
      @freshmarcent2741 8 лет назад +14

      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

    • @Luna-wu4rf
      @Luna-wu4rf 7 лет назад +4

      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

  • @MnACreations
    @MnACreations 10 лет назад +16

    That was very informative, thank you for creating the video!

    • @derekbanas
      @derekbanas  10 лет назад +1

      Mike Notarnicola Thank you :) I'm glad you liked it.

    • @MnACreations
      @MnACreations 10 лет назад

      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.

    • @MnACreations
      @MnACreations 10 лет назад +1

      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..

    • @MnACreations
      @MnACreations 10 лет назад +1

      Abbie Wolff It was a Christmas gift from my wife! :-)

    • @MnACreations
      @MnACreations 10 лет назад

      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

  • @Pegaryx
    @Pegaryx 6 лет назад

    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.

    • @derekbanas
      @derekbanas  6 лет назад +1

      Thank you :) Heavy editing is what makes me different

  • @jaysftw
    @jaysftw 8 лет назад +149

    infinity = 0
    while infinty >= 0:
    print('Pokemon Go')
    infinity += 1

    • @Sky-vp6nl
      @Sky-vp6nl 8 лет назад +2

      Beautiful.

    • @johnvonhorn2942
      @johnvonhorn2942 8 лет назад +7

      Challenge extended, challenge accepted, This quickly gets out of hand:
      #! /usr/bin/python3
      i = 1
      s="Gotta catch 'em all" + " "
      while i

    • @asmodeussy
      @asmodeussy 8 лет назад +6

      and when you have a continuous thing like that, you can do ctrl c to stop it

    • @callumwnt8176
      @callumwnt8176 8 лет назад +76

      while True:
      print('Pokemon Go')

    • @333Rich33
      @333Rich33 8 лет назад +10

      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.

  • @GPCTM
    @GPCTM 8 лет назад +4

    26:35 INPUT: name = input("What's your name? ")
    what's all the fuss about?

    • @sudheerrao07
      @sudheerrao07 8 лет назад +1

      +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.

    • @kismethasanaj8586
      @kismethasanaj8586 8 лет назад +4

      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.

  • @SyntekkTeam
    @SyntekkTeam 10 лет назад +10

    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.

    • @derekbanas
      @derekbanas  10 лет назад +7

      Arend Peter Castelein You're very welcome :) I'm happy that I could help.

  • @Fifty1stState.
    @Fifty1stState. 7 лет назад +2

    Order of arithmetic evaluation
    BODMAS = Brackets, Orders, Division, Multiplication, Addition then Subtraction

  • @WOok2a
    @WOok2a 8 лет назад +73

    Did it work? Do I know Python now?

  • @scann0r757
    @scann0r757 8 лет назад +5

    Thank you. It helped me a lot in just 1 Hour :)

    • @derekbanas
      @derekbanas  8 лет назад +3

      I'm happy I could help :)

  • @kamleshpatil1959
    @kamleshpatil1959 6 лет назад +57

    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...

    • @derekbanas
      @derekbanas  6 лет назад +10

      Thank you very much :) I'm very happy that you liked it

    • @kamleshpatil1959
      @kamleshpatil1959 6 лет назад +1

      Derek Banas your always welcome sir...

    • @chrisspears4851
      @chrisspears4851 6 лет назад +8

      Derek Banas Three year old video and still replying to comments. - respect

    • @kamleshpatil1959
      @kamleshpatil1959 6 лет назад +1

      Chris Spears yesss...

    • @saimaacademy5537
      @saimaacademy5537 6 лет назад

      ruclips.net/video/gGVqzl0V1xw/видео.html

  • @karthik-ex4dm
    @karthik-ex4dm 7 лет назад +192

    Ater being with c++, im finding simplicity of the python difficult.... u ppl got anything to say?

    • @derekbanas
      @derekbanas  7 лет назад +69

      I can understand that. If you get really good with anything the alternatives of any sort will seem wrong in one way or another.

    • @davidfarah
      @davidfarah 7 лет назад +2

      yeahh true

    • @kamleshpatil1959
      @kamleshpatil1959 6 лет назад +3

      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...

    • @kaushilkundalia2197
      @kaushilkundalia2197 6 лет назад

      i so feel you bro !

    • @user-bo5vr1ib6i
      @user-bo5vr1ib6i 6 лет назад +8

      +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.

  • @derkjochems1690
    @derkjochems1690 8 лет назад +104

    i like the speed of your talk. Count me in as a subscriber..

  • @PACKERSFANSheshank
    @PACKERSFANSheshank 8 лет назад +6

    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!

    • @derekbanas
      @derekbanas  8 лет назад +6

      Thank you :) I'm very happy that I could be of help

    • @thesonie
      @thesonie 7 лет назад

      Sheshank Shankar I need help with raspberry pi

  • @nikhilwate9133
    @nikhilwate9133 6 лет назад

    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!!!

  • @agnichatian
    @agnichatian 10 лет назад +6

    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)

    • @derekbanas
      @derekbanas  10 лет назад

      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.

    • @agnichatian
      @agnichatian 10 лет назад

      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.

  • @emo_nemo
    @emo_nemo 8 лет назад +29

    More enjoyable when played at 2x

  • @KabooM1067
    @KabooM1067 9 лет назад +415

    After years of C, I find Python's structure quote annoying D:
    I already miss all the semicolons and braces.

    • @KabooM1067
      @KabooM1067 9 лет назад +29

      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.

    • @niamatullahbakhshi9371
      @niamatullahbakhshi9371 9 лет назад

      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 .

    • @petelogiudice8202
      @petelogiudice8202 9 лет назад +26

      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.

    • @sloanlance
      @sloanlance 9 лет назад +2

      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.

    • @petelogiudice8202
      @petelogiudice8202 9 лет назад +2

      Good it isn't necessary

  • @DukeOfMarshall
    @DukeOfMarshall 6 лет назад

    I absolutely love the format of these videos. "Here's the information. Done." Can't wait to watch some of the others.

    • @derekbanas
      @derekbanas  6 лет назад +1

      Thank you :) I try not to waste time

  • @iLoveTurtlesHaha
    @iLoveTurtlesHaha 7 лет назад +111

    I'm watching this from the womb and watching at 18x speed. Now I own the facebook and goggles.

    • @derekbanas
      @derekbanas  7 лет назад +7

      That's funny :)

    • @kanuto9167
      @kanuto9167 6 лет назад +2

      hahahahahaha that a cool humor :D

    • @kynan9465
      @kynan9465 6 лет назад +1

      👓

    • @jellohunter7981
      @jellohunter7981 6 лет назад +1

      Darn! I should have done that

    • @94D33M
      @94D33M 6 лет назад +3

      What did you do with those goggles ? Sleep and imagine that you owned facebook ?

  • @dexdevlon8941
    @dexdevlon8941 7 лет назад +78

    The last 13 min was the hardest

    • @ludviglindholm8314
      @ludviglindholm8314 6 лет назад +2

      It sure was, still, don't understand classes...

    • @toothfairy5352
      @toothfairy5352 6 лет назад +1

      this comment currently has 13 likes

    • @serodev
      @serodev 6 лет назад +20

      @@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.

    • @theralhaljordan7337
      @theralhaljordan7337 6 лет назад +1

      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

    • @shadmansudipto7287
      @shadmansudipto7287 6 лет назад +2

      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.

  • @waltermackay
    @waltermackay 9 лет назад +4

    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.

    • @derekbanas
      @derekbanas  9 лет назад +4

      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.

    • @christophervassell9138
      @christophervassell9138 6 лет назад

      From my experiences, if one masters the basics, they become Tim Duncan.

  • @syedmuhammadhammadghani1035
    @syedmuhammadhammadghani1035 7 лет назад

    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. :-)

    • @derekbanas
      @derekbanas  7 лет назад

      Thank you :) I'm very happy that it helped

  • @anywallsocket
    @anywallsocket 7 лет назад +56

    now if only i could download this all into my head permanently...

    • @derekbanas
      @derekbanas  7 лет назад +10

      That's funny :)

    • @ciprianciprian5228
      @ciprianciprian5228 7 лет назад +2

      It's called remembering

    • @thepro8447
      @thepro8447 7 лет назад

      Ciprian Ciprian LOL

    • @leet9873
      @leet9873 6 лет назад

      Anyone wonder if Derek is actually a bot that senses funny comments?

    • @alpha-vs1fx
      @alpha-vs1fx 6 лет назад

      just get a notebook and note down every single point you find is importent for you.

  • @burdurky4301
    @burdurky4301 7 лет назад +412

    My Mum told me I have to learn programming, so here I am. I'm 50 by the way.

    • @derekbanas
      @derekbanas  7 лет назад +53

      Have fun

    • @PauloSilva-yu7fl
      @PauloSilva-yu7fl 7 лет назад +3

      Não entendi nada!!!!

    • @FGZPYR
      @FGZPYR 7 лет назад +17

      Paulo Silva talk fucking english

    • @FGZPYR
      @FGZPYR 7 лет назад +2

      Friemeltjes wut

    • @Atticore
      @Atticore 6 лет назад +25

      You're 50 and you let your mom tell you what to do?

  • @lexscarlet
    @lexscarlet 8 лет назад +10

    "continue, continue, continue, i agree..."
    every EULA ever.

  • @BenjaminBerthelot_86
    @BenjaminBerthelot_86 6 лет назад

    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!

    • @derekbanas
      @derekbanas  6 лет назад

      Thank you for the compliment :)

  • @abiral8384
    @abiral8384 7 лет назад +11

    Thank You Derek Banas. Love From Nepal :)

  • @faithfulservant1380
    @faithfulservant1380 7 лет назад +30

    Honest question
    Why use sys instead of input?

    • @lincolnsand5127
      @lincolnsand5127 6 лет назад +3

      I have no idea why. You can do type conversions easier with input.

    • @gautamabraham8908
      @gautamabraham8908 6 лет назад +1

      my point EXACTLY!

    • @jimhalpert9803
      @jimhalpert9803 5 лет назад

      Same! input() wud have been way easier n faster

    • @mikki7522
      @mikki7522 5 лет назад +1

      They are different, and depending on what kind of program you're creating you should evaluate which one is more efficient.

    • @minecute...9484
      @minecute...9484 3 года назад

      ruclips.net/video/25gvhzRN3ns/видео.html

  • @eldrinpaulgok-ong3450
    @eldrinpaulgok-ong3450 8 лет назад +9

    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

    • @jimstanley_49
      @jimstanley_49 8 лет назад +7

      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)

    • @eldrinpaulgok-ong3450
      @eldrinpaulgok-ong3450 8 лет назад +1

      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.

  • @ThomasJr
    @ThomasJr 4 года назад

    35:17 if you come from a language like Pascal, a class is nothing but a variable of the type Record. It's a collection of attributes for a given subject.

  • @ronin730
    @ronin730 8 лет назад +6

    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?

    • @liorkoren7375
      @liorkoren7375 8 лет назад

      I had the same issue. Does anyone know how to solve this?

    • @SlayerSC2
      @SlayerSC2 8 лет назад +7

      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()'.

  • @blyatman635
    @blyatman635 8 лет назад +4

    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 !

  • @Krisler12
    @Krisler12 8 лет назад +4

    Tips & Tricks:
    Click on video settings ->choose "Speed" -> Change to 0.5
    This will fix your problem ! ;)

    • @symix6664
      @symix6664 8 лет назад +2

      You misstyped 1.5 :P Atleast my problem was that he was so slow idk about you tho.

    • @symix6664
      @symix6664 8 лет назад +2

      and btw why your comment says tips & tricks when there is only 1 tip / trick ._.

    • @viridian4388
      @viridian4388 8 лет назад

      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. :(

  • @lbsc_thomas_703
    @lbsc_thomas_703 7 лет назад

    Thank you so much, I learned A LOT MORE in 40 minutes than in 5 full lessons. I really appreciate that these videos are free on RUclips, please keep up the fun vids :D!

    • @derekbanas
      @derekbanas  7 лет назад

      Thank you :) I'm very happy that it helped and all my videos will always be free

  • @luxurious0346
    @luxurious0346 7 лет назад +7

    C = a + b
    Print(C)
    *_MOM GET THE CAMERA, I MADE A CALCULATOR!!!_*

  • @CharlesCrossley
    @CharlesCrossley 8 лет назад +19

    How to open preferences in windows?

    • @theGENIUSofART-understood
      @theGENIUSofART-understood 8 лет назад +39

      how to do ANYTHING, in windows

    • @BelalAbdElnasser
      @BelalAbdElnasser 8 лет назад +1

      Alt + Ctrl + S or from the list choose settings

    • @ref3665
      @ref3665 8 лет назад +7

      Install Gentoo. It solves all my technical problems.

    • @tbxmxdog9187
      @tbxmxdog9187 7 лет назад +1

      Python on windows is more simple now

  • @bray3028
    @bray3028 8 лет назад +7

    can you make game exploits with this I already have an injector

  • @wabex11
    @wabex11 7 лет назад

    Your clean and direct explanation helped me to have a wide and useful overview of Phyton. Thank you Derek!

    • @derekbanas
      @derekbanas  7 лет назад

      Thank you :) I'm happy it helped

  • @FushiguroMegumi79
    @FushiguroMegumi79 8 лет назад +14

    wow it's so close to java it's scary lol. nice video! helped me prepare for my interview.

    • @TheOlian04
      @TheOlian04 8 лет назад +3

      suppose it depends on what you compare with :/

    • @gherbihicham8506
      @gherbihicham8506 8 лет назад +20

      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.

    • @FushiguroMegumi79
      @FushiguroMegumi79 8 лет назад +1

      Gherbi Hicham I meant the syntax is similar, yes. I understand the differences.

    • @gherbihicham8506
      @gherbihicham8506 8 лет назад +1

      Golemstorm In that case see C++, C and JavaScript's syntax out there, it's almost like Java's with the braces and all.

    • @suti211
      @suti211 8 лет назад +1

      Lel, java is not compiled, it has an interpreter, JVM which is making bytecode on the fly

  • @toothfairy5352
    @toothfairy5352 6 лет назад +3

    it usually takes ppl 1hr+ to explain classes. this guy did it in 11mins **claps**

  • @hughjazz8416
    @hughjazz8416 4 года назад +3

    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!

  • @ankitaboruah8818
    @ankitaboruah8818 6 лет назад

    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

    • @derekbanas
      @derekbanas  6 лет назад

      Thank you :) I'm very happy that you enjoyed it

  • @ScreamMario
    @ScreamMario 6 лет назад +15

    Nice video,but can't we just do Input() instead of sys.stdin.readline?()

    • @Rawing77
      @Rawing77 6 лет назад +3

      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.

    • @ScreamMario
      @ScreamMario 5 лет назад

      @@Rawing77 Yeah, this video is more of for people who know python and needs to be reminded of a specific topic.

  • @rebia5542
    @rebia5542 5 лет назад +11

    When you spend the year learning java only to find out the day before the final that your exam is in python... 😔🤙

    • @robertgardzinski6424
      @robertgardzinski6424 5 лет назад +1

      How was it? Did you passed?

    • @rebia5542
      @rebia5542 5 лет назад +4

      @@robertgardzinski6424 Yea! I actually did really well; i got a 9/9 (weird scoring lol).
      This video was actually a huge help, haha

    • @robertgardzinski6424
      @robertgardzinski6424 5 лет назад +2

      Glad to hear that. :)

  • @kaio62324
    @kaio62324 5 лет назад +7

    Learn C++ in one video: 3732hrs

  • @ismailaba8888
    @ismailaba8888 7 лет назад

    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

    • @derekbanas
      @derekbanas  7 лет назад

      Thank you for watching the whole video :) It is sad that most people watch just a few minutes

    • @ismailaba8888
      @ismailaba8888 7 лет назад

      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.

    • @derekbanas
      @derekbanas  7 лет назад

      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 :)

  • @st3vo1012
    @st3vo1012 6 лет назад +4

    In order to get the command "print(spot.toString())" to work (ran at about 41:10), I had to make all variables public. Have relevant rules/operating procedures in Python 3.6 changed since v3.4? Or may I have missed something in my code? I've looked everywhere.
    Any way to keep the variables private and still work the way he has it in the video? Below is my code; note all variables have had the double-underscore prefix removed to get it to function.
    import random
    import sys
    import os
    class Animal:
    name = None
    height = 0
    weight = 0
    sound = 0
    def __init__(self, name, height, weight, sound):
    self.name = name
    self.height = height
    self.weight = weight
    self.sound = sound
    def set_name(self, name):
    self.name = name
    def set_height(self, height):
    self.height = height
    def set_weight(self, weight):
    self.weight = weight
    def set_sound(self, sound):
    self.sound = sound
    def get_name(self):
    return self.name
    def get_height(self):
    return self.height
    def get_weight(self):
    return self.weight
    def get_sound(self):
    return self.sound
    def get_type(self):
    print("Animal")
    def toString(self):
    return "{} is {} cm tall and {} kilograms and says {}".format(self.name,
    self.height,
    self.weight,
    self.sound)
    cat = Animal("Whiskers", 33, 5, "Meow")
    print(cat.toString())
    class Dog(Animal):
    owner = ""
    def __init__(self, name, height, weight, sound, owner):
    self.owner = owner
    super().__init__(name, height, weight, sound)
    def set_owner(self, owner):
    self.owner = owner
    def get_owner(self):
    return self.owner
    def get_type(self):
    print("Dog")
    def toString(self):
    return "{} is {} cm tall and {} kilograms and says {} Her owner is {}".format(self.name,
    self.height,
    self.weight,
    self.sound,
    self.owner)
    def multiple_sounds(self, how_many=None):
    if how_many is None:
    print(self.get_sound())
    else:
    print(self.get_sound() * how_many)
    spot = Dog("spot", 53, 27, "Ruff", "Derek")
    print(spot.toString())

    • @TriBass
      @TriBass 6 лет назад +1

      thanks alot. was struggling with this forever

    • @tonybengue
      @tonybengue 6 лет назад +1

      I was stuck too. Thanks. It is a problem of scope in the constructor. You don't need to put all your attributes in public. Here is my functionnal code :
      class Animal:
      # attributes
      __name = "" #None revient à pas de valeur
      __height = 0
      __weight = 0
      __sound = 0
      #constructor
      def __init__(self, name, height, weight, sound):
      self.name = name
      self.height = height
      self.weight = weight
      self.sound = sound
      def set_name(self, name):
      self.__name = name
      def set_height(self, height):
      self.__height = height
      def weight(self, weight):
      self.__weight = weight
      def set_sound(self, sound):
      self.__sound = sound
      def get_name(self, name):
      return self.__name
      def get_height(self, height):
      return str(self.__height) #str convertit un nb en chaîne de caractère
      def get_weight(self, weight):
      return str(self.__weight)
      def get_sound(self, sound):
      return self.__sound
      def get_type(self):
      print("Animal")
      #show datas
      def toString(self):
      return "{} is {} cm tall and {} kilograms says {}".format(self.name,
      self.height,
      self.weight,
      self.sound)
      #instance of class Animal
      cat = Animal('Whiskers', 33, 10, 'Meow')
      print(cat.toString())
      cat.set_name("Gerard")
      cat.get_height(15)
      #print(cat.toString())
      #Inheritance
      #receive Animal class in parameter
      class Dog(Animal):
      #initl new attribute
      __owner = ""
      #constructor
      def __init__(self, name, height, weight, sound, owner):
      self.owner = owner
      super().__init__(name, height, weight, sound)
      def set_owner(self, owner):
      self.__owner = owner
      def get_owner(self, owner):
      return self.__owner
      def get_type(self):
      print("Dog")
      def toString(self):
      return "{} is {} cm tall and {} kilograms says {}d{}".format(self.name, self.height, self.weight, self.sound, self.owner)
      def multiple_sounds(self, how_namy=None):
      if how_many is None:
      print(self.get_sound())
      else:
      print(self.get_sound() * how_many)
      spot = Dog("Spot", 53, 27, "Ruff", "Tony")
      #print(dir(spot))
      print(spot.toString())

    • @juanarrivillaga2683
      @juanarrivillaga2683 6 лет назад +2

      The fundamental problem is that this tutorial teaches a lot of incorrect things. This is teaching you "Java in Python", not Python. There *are no private/public/protected* variables in Python. Indeed, there is no concept of *access modifiers at all*.

    • @vivvpprof
      @vivvpprof 6 лет назад

      OMG, please could you expand on that? So why the getter/setter functions? What are they for? I'm completely new to Python but have to learn it very fast... Thx

    • @st3vo1012
      @st3vo1012 6 лет назад

      Hey Vpprof, below is a good explanation of what I was referring to. All I did was remove the underscores to the variables to make them easier to get to instead of the weakly private behavior modifications Python assigns with a single or double-underscored variable.
      As others have said it's not actually "private" but as far as I can tell that's the closest you can get to the concept of private from other languages in Python. As far as the getter and setter functions are concerned, I want to say its a way for the developer to control the means by which one changes and accesses the value of these double-underscore, pseudo-private variables.
      ruclips.net/video/ALZmCy2u0jQ/видео.html

  • @fidelcatsro6948
    @fidelcatsro6948 7 лет назад +12

    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?

  • @thenessiezestchannel7379
    @thenessiezestchannel7379 10 лет назад +5

    Please make a pygame tutorial!

    • @derekbanas
      @derekbanas  10 лет назад +2

      The Nessiezest Channel I have been thinking about doing that. Thanks for the request :)

  • @dp0813
    @dp0813 6 лет назад

    Error at 29:26; ".isalnum" does NOT return True if all characters are numbers. It returns True if every character is alphanumeric (either a letter or a number). Both ".isalpha" and ".isalnum" for this example return "False" because of the spaces, apostrophes, and the dash. ;)

  • @davidgrigg12
    @davidgrigg12 7 лет назад +10

    800 people were so excited about the Captain Cold reference that they missed the like button!!!

    • @derekbanas
      @derekbanas  7 лет назад

      That's funny 🤣

    • @Rawing77
      @Rawing77 6 лет назад

      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.

    • @ScreamMario
      @ScreamMario 5 лет назад

      @@Rawing77 What's so bad about defining private variables in a class?

  • @9213ify
    @9213ify 8 лет назад +5

    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?

    • @alexanderadam01
      @alexanderadam01 8 лет назад +1

      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)

    • @9213ify
      @9213ify 8 лет назад +1

      Close, I was using 3. The issue is trying to call a private variable.

    • @DrYunfattpao
      @DrYunfattpao 7 лет назад +1

      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

    • @dylanquesada592
      @dylanquesada592 7 лет назад

      THIS. yes.

    • @NemoN0body
      @NemoN0body 7 лет назад

      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

  • @SeeRjED
    @SeeRjED 8 лет назад +14

    But what I don't understand is why someone older than 65 cant have a birthday party :3

  • @cps900
    @cps900 6 лет назад

    Just followed through the whole thing. Very quick and helpful. You are a clear speaker!

  • @juanarrivillaga2683
    @juanarrivillaga2683 7 лет назад +19

    Warning! This tutorial is not a good Python tutorial. It is clearly written by someone who comes from a Java/C++ background, and misuses Python constructs that they confuse for constructs from those languages. For example, it uses double-underscore name-mangling, i.e. things like `self.__myvar = myvar` , but this is *not meant to be used like a private access modifier*. You just do `self.myvar = myvar` in Python, or, if you want to signal to people that an attribute is an implementation detail, you use a *single underscore*. Second, the tutorial creates a bunch of class variables, that are immediately shadowed by instance variables in the initializer. This is totally pointless, and can lead to subtle bugs. Finally, a `toString` method? Use `__str__` in Python, and then you can just `print(instance)` or `str(instance)`. Again, clearly someone is coming from Java or C++.

    • @LakshmiPrasad_Vizag
      @LakshmiPrasad_Vizag 6 лет назад

      Juan Arrivillaga Great

    • @Arm3dWithWings
      @Arm3dWithWings 6 лет назад

      thanks for the clarifications. there are no private instance variables which i thought was a bit strange but oh well, it's workable. Also if variables are dynamically typed, would i have to check if something is number rather than strings for, say, the add function? that was new for me too

    • @XxSmAsHeN619xX
      @XxSmAsHeN619xX 6 лет назад +2

      What tutorial would you recommend?

  • @bruceleeroy8302
    @bruceleeroy8302 6 лет назад +3

    I cannot get the toString function to work when using it as a “Dog” method.

    • @ThomasJr
      @ThomasJr 4 года назад

      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.

  • @thewhiteresha-twr531
    @thewhiteresha-twr531 7 лет назад +14

    to print a name you can also do :
    name = "Stel"
    print("My Name is %s"%(name))
    that works the same (python27) :p

    • @derekbanas
      @derekbanas  7 лет назад +1

      Thank you for sharing :)

    • @thewhiteresha-twr531
      @thewhiteresha-twr531 7 лет назад

      np

    • @harshyofficial
      @harshyofficial 7 лет назад

      Ok

    • @bamberghh1691
      @bamberghh1691 6 лет назад

      name = "Jeff"
      print("my name is {}" % (name))

    • @elsholz2365
      @elsholz2365 6 лет назад

      Python 3.6 and newer also feature fstrings.
      Example:
      name = 'Gunnar'
      age = 36
      print (f'{name} is {str (age)} years old.')

  • @zennicliffzennicliff
    @zennicliffzennicliff 5 лет назад

    Again, the teaching and video quality is next to perfect!!! I am amazed!