Why *ARGS and **KWARGS are Useful in Python

แชร์
ฝัง
  • เผยแพร่เมื่อ 13 ต.ค. 2024
  • Keep exploring at brilliant.org/J... Get started for free, and hurry-the first 200 people get 20% off an annual premium subscription.
    This video was sponsored by Brilliant
    Scraper API www.scrapingbe...
    Patreon: / johnwatsonrooney
    Donations: www.paypal.com...
    Proxies: iproyal.club/J...
    Hosting: Digital Ocean: m.do.co/c/c7c9...
    Gear I use: www.amazon.co....
    Disclaimer: These are affiliate links and as an Amazon Associate I earn from qualifying purchases

ความคิดเห็น • 33

  • @JohnWatsonRooney
    @JohnWatsonRooney  2 ปีที่แล้ว +1

    Keep exploring at brilliant.org/JohnWatsonRooney/ Get started for free, and hurry-the first 200 people get 20% off an annual premium subscription.

  • @brandone7273
    @brandone7273 2 ปีที่แล้ว +6

    I'm a still newish infrastructure guy, trying to automate as much network functionality as I possibly can.
    I don't really know any devs to pick their brain or have them expound on a topic to really cement the concept in my head.
    Your videos have helped me tremendously in understanding python in a way that's actionable in my environment. Thank you!

    • @JohnWatsonRooney
      @JohnWatsonRooney  2 ปีที่แล้ว +2

      thank you! I'm glad to have helped out in some way

  • @oromis995
    @oromis995 2 ปีที่แล้ว +3

    absolute legend. I watched your web scraping video because it appeared on my feed and applies to my job, then I saw this one which was a missing piece of knowledge I had that I couldn't explain in my code. Nice job

    • @JohnWatsonRooney
      @JohnWatsonRooney  2 ปีที่แล้ว +2

      Thanks that’s very kind I’m glad it helped you!

  • @ea3gug
    @ea3gug 2 ปีที่แล้ว +3

    Very interesting, now I know better python. I understand that when you use kwargs, it makes difficult for the IDE (Pycharm,...) to check that you are passing a valid header/parameter to the receiving class in edition mode or "compilation mode" before running, creating issues in runtime when you use the wrong entry. Thanks for your great video!

  • @gabrieljeca
    @gabrieljeca 2 ปีที่แล้ว +3

    Wow, I finally understood those concepts! Awesome content as always, JWR!

  • @jjdawg9918
    @jjdawg9918 2 ปีที่แล้ว +3

    Great video! It also confirms my distaste of highly overloaded operators where you are guessing at the behavior. But in full disclosure I'm a lowly C programmer ;)

  • @a2zviz
    @a2zviz ปีที่แล้ว +1

    Bro you are doing great job. Learning lot of from y ❤

  • @Yeeeeeehaw
    @Yeeeeeehaw 2 ปีที่แล้ว +5

    man, your videos are extremely useful !

    • @JohnWatsonRooney
      @JohnWatsonRooney  2 ปีที่แล้ว

      Thanks very kind

    • @Septumsempra8818
      @Septumsempra8818 2 ปีที่แล้ว +1

      Him and Python 360 have the best scraping vids on TH-cam right now!

  • @Matt-es1wn
    @Matt-es1wn ปีที่แล้ว +1

    Dataclasses seem so amazing. I wanna start using these instead of the annoying merhods i use with pandas right now

  • @danielmdubois
    @danielmdubois ปีที่แล้ว

    This video does a good job on how, but maybe it could be better on why? I think some time could be spent explaining why you wouldn't just use a list parameter for any function (e.g.) that takes a collection, instead of *args. True, this would effectively enforce the caller performs some list comprehension on whatever is being dealt with, whether it be a tuple, multiple variables, iterable, etc... I think I know the answer -- turning something iterable into a list increases memory requirements and probably processing time from double work -- but it would be nice to be explicitly said; to explain why these syntax tricks add value to python. People coming from other languages, particularly statically typed languages, are probably more comfortable passing collections around, as it's a more straightforward concept. I feel like **kwargs is especially tricky to grok, because of the weird multi-step process of unpacking named arguments, which itself is a quirk specific to python, while then leaving a "remant" kwargs dictionary to operate on.

    • @SydwasheretheIII
      @SydwasheretheIII 8 หลายเดือนก่อน

      I’ve been trying for hours to find answers on why I’d ever use *args and **kwargs instead of passing explicit lists and dicts. Every video or forum I’ve found explains HOW *args and **kwargs work, but I understood that from the start. Still stuck on the why :(

  • @keagankemp6275
    @keagankemp6275 2 ปีที่แล้ว +1

    Sjoe 10mins to save hours of reading and frustration, great video

    • @JohnWatsonRooney
      @JohnWatsonRooney  2 ปีที่แล้ว +1

      Thanks!

    • @keagankemp6275
      @keagankemp6275 2 ปีที่แล้ว

      @@JohnWatsonRooney equally impressive is that you are a self taught developer, I’m using that as motivation when python seems impossible

  • @azhari7968
    @azhari7968 2 ปีที่แล้ว +1

    This is very random but, you showed up in my recommendation page and I just wanna say that you have an awesome beard I can't not look at it

    • @JohnWatsonRooney
      @JohnWatsonRooney  2 ปีที่แล้ว

      thanks, I'm going to take that as a compliment

  • @arthurpenndragon6434
    @arthurpenndragon6434 2 ปีที่แล้ว +1

    great explanation, really helpful!

  • @stewart5136
    @stewart5136 2 ปีที่แล้ว +1

    Another "brilliant" video from John. Pun intended 😉

  • @DoggARithm
    @DoggARithm 2 ปีที่แล้ว +1

    One of the best videos on the topic I've seen! Good explanation

  • @Septumsempra8818
    @Septumsempra8818 2 ปีที่แล้ว +1

    A lesson from MrBeast: teach us something about args/kwargs in brilliant. We can't skip the information essential to this topic.
    Ad Retention = $$$

  • @KrAsHeDD
    @KrAsHeDD 2 ปีที่แล้ว +1

    Thanks so much, it helps

  • @peterkim9696
    @peterkim9696 2 ปีที่แล้ว

    Please make a video how to deploy fastapi script online so other people can use my tool anywhere

  • @Qwasieee_P
    @Qwasieee_P ปีที่แล้ว +1

    Someday I'll be mature enough not to laugh everytime he says mydict 😖😖

  • @bryce3851
    @bryce3851 5 หลายเดือนก่อน

    7:15 python joke of they year

  • @bakasenpaidesu
    @bakasenpaidesu 2 ปีที่แล้ว +2

    ;)