If You’re Not Using Python DATA CLASSES Yet, You Should 🚀

  Рет қаралды 322,026

ArjanCodes

ArjanCodes

Күн бұрын

Пікірлер: 416
@ArjanCodes
@ArjanCodes 3 жыл бұрын
Anybody else into The Witcher?
@Newascap
@Newascap 3 жыл бұрын
If you talking about the game, I bought it on gog but never got the chance to install it. Too much time fighting with k8s manifests and no time for playing :c
@ArjanCodes
@ArjanCodes 3 жыл бұрын
I have the Witcher 3 for the Playstation lying in a drawer, haven't gotten around to that either.
@draufunddran
@draufunddran 3 жыл бұрын
@@ArjanCodes I have the Witcher 3 also lying in a drawer but mine is for the xbox :D
@leftblank5315
@leftblank5315 3 жыл бұрын
I thought the show had a bit of corny dialog but the more i watched it the more i was immersed and it didn't seem bad. so yeah i love it
@itsmemouha2811
@itsmemouha2811 3 жыл бұрын
You've got to read the books, a masterpiece. If you liked the TV show or didn't, it won't matter after reading just the first two short story collection.
@falak88
@falak88 3 жыл бұрын
Just in case you're feeling low Arjan, you are doing a freaking great job here. Thank you very much ! Keep them coming :D
@ArjanCodes
@ArjanCodes 3 жыл бұрын
Thank you so much for your kindness, much appreciated! I’m happy you like the videos.
@myhome...essenceofmylife5612
@myhome...essenceofmylife5612 2 жыл бұрын
2222²²²awaŕd
@drymanic
@drymanic 3 жыл бұрын
One cool thing about the "frozen" attribute is that if set to True, Python will automatically create a ___hash___ function for your dataclass, allowing it to be used in things like dictionary keys and sets. (Note that if the class contains an unhashable field such as a list, the ___hash___ function will throw an exception).
@JohnMitchellCalif
@JohnMitchellCalif 3 жыл бұрын
Incredibly clear presentation. I've been programming Python for 25 years and hadn't used data classes. Thanks! Subscribed.
@jakefischer8281
@jakefischer8281 3 жыл бұрын
I believe it is fairly new to python
@dennissmith6867
@dennissmith6867 3 жыл бұрын
This is a really great intro to data classes, very clear and to the point. Looking forward to more videos like this!
@ArjanCodes
@ArjanCodes 3 жыл бұрын
Glad you liked it, Dennis!
@CodingEntrepreneurs
@CodingEntrepreneurs 3 жыл бұрын
This is great! Thanks for sharing Arjan. Love your work.
@jayeshdeorukhkar4956
@jayeshdeorukhkar4956 3 жыл бұрын
Love your videos too 🔥
@skyletwings5711
@skyletwings5711 2 жыл бұрын
8:43 "So frozen helps you to make sure the data is not changed anywhere in your code." ... right after bypassing this mechanism and showing how the data is changed in the code. :D Great videos, you are my no. 1 python instructor. Programming python itself is fun, but learning from a patient, calm, well explaining teacher is invaluable, but free. Thank you for sharing!!
@alicebrown854
@alicebrown854 2 жыл бұрын
Where is 'love' button? 'Like' is not an accurate reflection of what I feel about your videos. I've seen many amazing dudes with online tutorials on KZbin, but you are the most amazing
@myce-liam
@myce-liam 2 жыл бұрын
Arjan, your videos are really clear and simple. You are very much appreciated. Greetings from the UK!
@ArjanCodes
@ArjanCodes 2 жыл бұрын
Thanks so much Liam, glad the content is helpful!
@jimmy21584
@jimmy21584 3 жыл бұрын
When dealing with data in Python these days, I find myself almost exclusively doing comprehensions and functional programming with dictionaries and lists, rather than using classes. But good to know this is out there.
@ZergD
@ZergD 3 жыл бұрын
I concur with that!
@AddyVDH
@AddyVDH 3 жыл бұрын
This is the best way IMO. Heavy OOP often makes python code super messy as many people get involved in a codebase.
@bakane6030
@bakane6030 3 жыл бұрын
@@AddyVDH Agreed. Python is NOT supposed to be an object oriented language
@nsambataufeeq1748
@nsambataufeeq1748 3 жыл бұрын
I had a graduate class in LISP, i found the functional bits interesting and are now using them in python
@JustMaiyak
@JustMaiyak 3 жыл бұрын
FP un Python feels great !
@mithunmanoharmithun
@mithunmanoharmithun 3 жыл бұрын
I would love to see a complete python course taught by Arjan!
@typehint
@typehint 2 жыл бұрын
Really happy I found your channel! You and Corey Schafer are my two favourites for learning Python right now. Keep up the excellent work!
@ArjanCodes
@ArjanCodes 2 жыл бұрын
Thanks so much Finah.
@Bc7-w9k
@Bc7-w9k 2 жыл бұрын
I LOVE U, THIS IS THE FIRST STEP FOR UNDERSTAND FAST API AND PYDANTIC, THANK U FOR URS VIDEOS
@kyletech4878
@kyletech4878 3 жыл бұрын
I find the asdict and astuple methods from the dataclass library very handy.
@DanielRios549
@DanielRios549 3 жыл бұрын
This is something I was wondering to use in Python since I discovered that in PHP 8, you do not need to set the construct parameter to attributes anymore, you set the attributes directly on the parameter, this is very useful when you have a lot of initial parameters, pass the parameter and after that set it to an attribute is so so boring
@Yassou1985
@Yassou1985 Жыл бұрын
Arjan keep doing your video man ! Your are a true teacher, everthing you say is just so clear. Thank you for your help :)
@ArjanCodes
@ArjanCodes Жыл бұрын
I'm glad my content has been helpful! Thank you for the kind words :)
@cetilly
@cetilly 3 жыл бұрын
Awesome! Coming from a C# background this really makes my day to know data classes are a thing in Python. Awesome. Really good video. Thanks Now I need to refactor all my custom data classes :-D
@ArjanCodes
@ArjanCodes 3 жыл бұрын
It seems technical debt never really stops 😊.
@theophilegaudin2329
@theophilegaudin2329 3 жыл бұрын
I started using classes when I could not do otherwise. My fonctions had like 15 variables that I had to state explicitly. It was impractical. My code was working on molecules and mixtures of molecules. So I created a class "mixture" and a class "molecule" and suddenly my fonctions were acting on mixtures and molecules rather than long lists of variables. That was such a relief. Now my classes have like 70 attributes because, well, mixtures and molecules have many structural features and properties. Everytime I extend my code I simply add new attributes and that's it.
@nlight8769
@nlight8769 3 жыл бұрын
I've been coding for... hmm... since python 2.5 as an amateur, when I need it. The vast majority of what I learned is from back then, and while i've been keeping learning, in the last years, besides some modules here and there, I've not learned many new things... discovered the chanel last week, and man I've learned so much since ! Sure there are few design pattern that I was already doing out of pure logic and commodity, though even then the knowledge acquired here have allowed me to refine these to the next level (or on the road to it), plus the terms that goes with it ! Thank you so much ! And there are many new neat things that I've been missing, like the module abstractclass or this dataclass. A great channel : advanced and intermediate concepts, in python !
@ArjanCodes
@ArjanCodes 3 жыл бұрын
Thank you, I'm happy you like the content!
@Egon3k
@Egon3k 3 жыл бұрын
Everytime watching one of your videos, I learn something new. Keep on going with these very nice and easy to understand videos :)
@aar021
@aar021 3 жыл бұрын
That intro was hilarious. Well put video. Super clear.
@ArjanCodes
@ArjanCodes 3 жыл бұрын
Glad you liked it Alvaro!
@letsaram
@letsaram 3 жыл бұрын
I love how wisely you avoid all the issues I've had with other peoples code.
@antoniopena1183
@antoniopena1183 2 жыл бұрын
Very straightforward and nice way of explaining how it all works.
@ldebrotb09
@ldebrotb09 3 жыл бұрын
Thank you Arjan! Your videos about how to make more of Python (with built-in functions), write better and cleaner code, etc. motivate me in trying to become more Pythonian.
@ArjanCodes
@ArjanCodes 3 жыл бұрын
Glad to hear they’re helpful to you, Lucien!
@its_murwayi
@its_murwayi 2 жыл бұрын
This guy is awesome . The stuff i pick from you everyday is priceless. Got people at work thinking am a Python god
@martindu9083
@martindu9083 2 жыл бұрын
good video, for sort , dataclass will use all attributes by order for checking, so sort_index is not mandatory, its effected just because its the first one
@niveshsanghvi9066
@niveshsanghvi9066 3 жыл бұрын
Nice video Arjan ! Looks very useful
@talhaamir9023
@talhaamir9023 3 жыл бұрын
I loved the start of the video :) This channel deserves a million subs,the only channel most quality content :)
@kruceo
@kruceo 3 жыл бұрын
Clearly demonstrated. Earned my “like and subscribe”! Looking forward to checking out your other tutorials/content.
@ArjanCodes
@ArjanCodes 3 жыл бұрын
Thank you Marcel - glad you liked the content!
@sf-spark129
@sf-spark129 Жыл бұрын
I've been using the conventional class in Python. This is such a great knowledge boost!!
@estevaoyt
@estevaoyt 11 ай бұрын
Arjan, you are great inspiration, love your videos!
@ArjanCodes
@ArjanCodes 11 ай бұрын
I'm happy to hear you have been enjoying the videos!
@qrubmeeaz
@qrubmeeaz 2 жыл бұрын
Best Python videos in the known universe!!
@ArjanCodes
@ArjanCodes 2 жыл бұрын
Thank you so much!
@rupeshchoudhary9237
@rupeshchoudhary9237 3 жыл бұрын
Great job. I love you explaining style.
@ArjanCodes
@ArjanCodes 3 жыл бұрын
Glad you enjoyed it!
@Xaminn
@Xaminn 3 жыл бұрын
Damn. This information is going to save me years of time and frustration. Thanks for this.
@python_byte
@python_byte 3 жыл бұрын
Just loving all of your videos man, keep up the awesome work. My focus is to watch ALL THE VIDEOS
@ArjanCodes
@ArjanCodes 3 жыл бұрын
Thanks, glad you like the videos!
@andrewiglinski148
@andrewiglinski148 2 жыл бұрын
Dude I'm a pretty experienced developer but brand new to python as of 2 months ago... I've seen like 5 videos on dataclasses by now and this is the first one that actually showed the benefits over regular classes... after by mile long init function is finished lol
@gedtoon6451
@gedtoon6451 11 ай бұрын
I find the content of your videos are on the edge of my python knowledge. When I watch one, I learn something new, without it making my brain hurt!
@ArjanCodes
@ArjanCodes 11 ай бұрын
That's a good way to put it! Ahah, I'm glad you're enjoying the content!
@AdityaDiwakarVex
@AdityaDiwakarVex 3 жыл бұрын
Video quality is insanely good for only 8K subscribers. Keep it up!
@ArjanCodes
@ArjanCodes 3 жыл бұрын
Thanks, will do!
@christopherc4526
@christopherc4526 Жыл бұрын
Just found your channel and I am glad I did. Outstanding introduction to very useful concepts. Well done
@ArjanCodes
@ArjanCodes Жыл бұрын
Awesome, thank you!
@gregoryfenn1462
@gregoryfenn1462 3 жыл бұрын
I really like this! It feels like modern python is much more robust and can be better self-documented and typed nowadays.
@ArjanCodes
@ArjanCodes 3 жыл бұрын
You might also like Pydantic. It’s very similar but adds a few extras like data validation and nested models. It is a third-party package though.
@patrikwiklund6154
@patrikwiklund6154 3 жыл бұрын
Arjan. I really appriciate your videos! Thank you! Really awesome
@ArjanCodes
@ArjanCodes 3 жыл бұрын
My pleasure, Patrik!
@leanbravo8856
@leanbravo8856 3 жыл бұрын
Why did I take so long to discover this channel? True goldmine of knowledge. Hit the bell.
@ArjanCodes
@ArjanCodes 3 жыл бұрын
Thank you Lean, glad you like the content!
@pippog88
@pippog88 3 жыл бұрын
Hands dowm the best tutorials on Python! Thanks for what you're doing! :)
@ArjanCodes
@ArjanCodes 3 жыл бұрын
Thank you so much!
@pranavnyavanandi9710
@pranavnyavanandi9710 2 жыл бұрын
Long since I subscribed. 😊 This is quite the top notch content.
@ArjanCodes
@ArjanCodes 2 жыл бұрын
Thank you so much!
@thatinstant
@thatinstant 3 жыл бұрын
Wow! This video was super helpful in getting familiar with data classes! Great intro! ...Subscribed!
@ArjanCodes
@ArjanCodes 3 жыл бұрын
Awesome! Thank you!
3 жыл бұрын
Awesome tutorial bro! I had used data classes but this is much more details that I didn’t know about. Thanks
@ArjanCodes
@ArjanCodes 3 жыл бұрын
You’re welcome- glad you enjoyed it!
@ikustudies
@ikustudies Жыл бұрын
you're making me rethink my entire codebase. i wish i could start over now but i'm so far. sheesh
@PNadav183
@PNadav183 2 жыл бұрын
quick question about the __str__ representation you added, why did you use __str__ instead of __repr__? I usually choose __repr__ when it doesn't really make sense that an object be casted to a string but I still want to print it (for debugging or just to display it for some other reason) and I use __str__ when I think there is a relevant use case for a string casting. But these were my own conclusions and a convention I set for myself, is this a good practice? Is there any reason to use __repr__ over __str__ (or vice-versa)?
@Noah-hi2up
@Noah-hi2up 3 жыл бұрын
This is a really cool feature and definitely useful for my work! Are data classes actually implemented differently at the c level or is this just a shorthand format for accessing commonly used features?
@joshcousins9422
@joshcousins9422 3 жыл бұрын
Such awesome content, this video got me to start learning python and I'm loving it! Big request though, could you do a video about Flask? Would be much appreciated!
@ArjanCodes
@ArjanCodes 3 жыл бұрын
Thank you Josh - it’s on the list 😉.
@peitlijozsef
@peitlijozsef 3 жыл бұрын
@@ArjanCodes I hope with Dash...
@aadithyavarma
@aadithyavarma 3 жыл бұрын
@@ArjanCodes Can you compare Flask with FastAPI too? Seems like FastAPI is faster and is more pythonic in way, but I am unsure of the drawbacks of choosing FastAPI over Flask. Can you share your thoughts?
@TueChristensenDK
@TueChristensenDK 3 жыл бұрын
Very nice video, good explanations and well produced. When I see something like the frozen=True colliding with the __post_init then I get sad.... Coming from Java+lombok I am however, not really impressed with this dataclass annotation, but it did improve my knowledge of Python :) Keep the videos coming!
@johnniedalesandro3269
@johnniedalesandro3269 Жыл бұрын
These are EXCELLENT videos.
@elvistsang832
@elvistsang832 3 жыл бұрын
This is amazing! I’ve been struggling with my project and this totally saved my day!
@ArjanCodes
@ArjanCodes 3 жыл бұрын
Glad I could help, Elvis!
@nardu
@nardu 3 жыл бұрын
"All your Data are belong to us" 🤣 +1 Arjan, love the Easter egg word portraits
@BiGreDNoSecoMpAny
@BiGreDNoSecoMpAny 3 жыл бұрын
loved Empire Earth as well xD
@hlore7600
@hlore7600 Жыл бұрын
Amazing! Thank you for creating this content!
@ArjanCodes
@ArjanCodes Жыл бұрын
Glad you enjoy it!
@GJ22
@GJ22 3 жыл бұрын
All of your videos are still a little above my aptitude, I'm still relatively new to coding in general but I feel jumping in at the deep end can sometimes be good 👍
@Gajet9
@Gajet9 3 жыл бұрын
I do understand that you used sort_index to showcase field types, but wouldn't it be more intuitive to define sort_index to be a property? That way we ensure it's readonly and we also ensure the sort_index updates automatically™ as the relevant fields are updated.
@manonthedollar
@manonthedollar 3 жыл бұрын
I've never been totally sold on data classes. To me, the functionality has been available forever in the form of dunder methods, @property decorators, and such. Am I being unreasonable here? Is there any sort of performance gain to data classes? Thanks for the excellent video as always!
@ArjanCodes
@ArjanCodes 3 жыл бұрын
Thanks! Actually, data classes are exactly the same as regular classes. The only thing the decorator does is already add dunder methods to make the class more suitable for dealing with representing data. So it's basically a shorter version of adding dunder methods yourself. Obviously, if what the data class decorator adds doesn't fit with what you need, then it is better to define those methods yourself, there is no particular performance gain to data classes.
@mikeciul8599
@mikeciul8599 2 жыл бұрын
Can you make sort_index a @property so you don't have to mess around with mutation at all?
@justchary
@justchary 3 жыл бұрын
Very good! Thank you. You really have a talent to explain things
@davidbacter5424
@davidbacter5424 3 жыл бұрын
Most of the programming channels show basic information with less relevant examples. I just came across this channel and let me tell you that you share the most relevant information I have ever seen on any channel. Thank you for your work, I really appreciate it!
@glebsidorov9647
@glebsidorov9647 3 жыл бұрын
Thanks for the class Mr :)
@VoyivodaFTW1
@VoyivodaFTW1 3 жыл бұрын
That HHKB. Typing was so fast and smooth.
@ArjanCodes
@ArjanCodes 3 жыл бұрын
It's a Keychron K2. Feels great.
@RonaldPostelmans
@RonaldPostelmans Жыл бұрын
Hoi Arjan. Je maakt mooie video’s met duidelijke uitleg. Kun je een praktisch voorbeeld geven waarvoor jij data classes zou gebruiken. Ik zou denken dat, je die niet nodig hebt als je bv crud operaties wilt doen naar b.v. een SQL database
@ArjanCodes
@ArjanCodes Жыл бұрын
Hi Ronald, dankjewel! Dataclasses zijn erg handig in combinatie met Pydantic, aangezien je dan gebruik kunt maken van validatie van velden voor bijvoorbeeld APIs of database-modellen. Het is ook handig voor het representeren van een set config-waarden die je uit bijvoorbeeld een JSON file leest.
@it_is_ni
@it_is_ni 3 жыл бұрын
Another small thing: I see you using both single and double quotes. If you use a formatter (like Black) and set VSCode to Format on Save you’ll automatically get rid of these inconsistencies.
@ArjanCodes
@ArjanCodes 3 жыл бұрын
In my more recent videos, I’ve started using a combination of Pylance, Pylint and Black - works really well!
@diogosilva3152
@diogosilva3152 3 жыл бұрын
I have been programming in Python for quite some time now, and I had no idea of this functionality. Thanks :p
@hoshiataru
@hoshiataru 2 жыл бұрын
I tried making a playing card dataclass but since the comparison is dependent on the tuple of all values I had to override the comparison operators or "Ace of Hearts is > Ace of Diamonds (H > D)". I'm really new to Python (and programming), I thought dataclass would be good for playing card class as it's just a data holder anyway but if I ended up implementing my own sorting is it still worth using? Overhead? It's such a simple use case maybe I'm over complicating things? I think my only benefit was the repr, str, and the init having done for me.
@PanduPoluan
@PanduPoluan 2 жыл бұрын
Maybe check also the attr.s package.
@zolika154
@zolika154 3 жыл бұрын
You’re going to be a channel with many subs ! Mark my words.
@nowyouknow2249
@nowyouknow2249 2 жыл бұрын
You are my python role model
@ShanilPanara
@ShanilPanara 3 жыл бұрын
Loved this!
@PanduPoluan
@PanduPoluan 2 жыл бұрын
Ahahahah, the opening where you're presenting dataclasses as if they're a sponsor, that's hilarious 😂
@ArjanCodes
@ArjanCodes 2 жыл бұрын
Thank you Pandu, glad you liked the video!
@Orionrobots
@Orionrobots Жыл бұрын
Could that sort order field be made as a python property? Do we get some shortcuts around using slots for packing these in memory when in large arrays?
@crosby3108
@crosby3108 3 жыл бұрын
This was amazing thanks for going into so much detail
@ArjanCodes
@ArjanCodes 3 жыл бұрын
Thanks - glad you liked it!
@debakarr
@debakarr 3 жыл бұрын
That "ALL YOUR DATA BELONG TO US" in the background was funny. Nice quality content btw :)
@ArjanCodes
@ArjanCodes 3 жыл бұрын
Thank you!
@Hirnlappen
@Hirnlappen 3 жыл бұрын
What happens if, for example, self.sort_index = self.strength in __post_init__, we instantiate a Geralt at some point in the code but change his strength to something else later? Does sort_index somehow get updated automatically?
@sergiopovoli4332
@sergiopovoli4332 3 жыл бұрын
Thank you sir for this video! It was very helpfull for me.
@retrofutur1st
@retrofutur1st 3 жыл бұрын
10/10 video, subscribed and liked 😀
@ArjanCodes
@ArjanCodes 3 жыл бұрын
Thank you, glad you liked it!
@sengatenga8552
@sengatenga8552 2 жыл бұрын
Hi Arjan, you have really great videos and great code. Can you do any video on database connection to python as OOP? Would love to see how you do it. Keep up the good work!
@ArjanCodes
@ArjanCodes 2 жыл бұрын
Thanks Senga, happy you’re enjoying the content! Thanks for the suggestions, I've put it on the list.
@yonlehman
@yonlehman 2 жыл бұрын
I love your presentation. Keep it up. Im much less impressed with Python. Yes its powerful, but in my opinion the language grows in a very non obvious way. It starts with the @ notation to introduce what would probably have been a pure language feature (as jn class/struct) had they thought of it originally. Then towards the end you had to add weird, less readable notation such as setting attributes to overcome the weakness of the original extention. To an extent this is typical of the modern "Agile" approach which encourages starting with trivial stuff, without doing to much conceptual design, and adding stuff as your requirements evolve. But Agile recognizes that there is a price to pay, technical debt, which it encourages you to fix. In the case of a language or infrastructure you cant do that, you're committed to backwards compatibility and similar issues, so the language structure slowly decays, becomes more complex and you lose consistency.. I'm interested in your take on these comments.
@apachethehun
@apachethehun 3 жыл бұрын
Thanks for sharing. Love this approach. Do you think dataclasses can be used for comparing two data sets. While end of records->generate a dataclass for that row and do a comparison between each row?
@ArjanCodes
@ArjanCodes 3 жыл бұрын
You’re welcome! This is certainly possible. If you have more elaborate needs, such as nested data structures or need to validate the data when you create the objects, you might want to take a look at Pydantic.
@disko.kommando
@disko.kommando 3 жыл бұрын
Great video though I am struggling to find my own personal use cases. Seems unpythonic in syntax to me?
@matthewbailey3052
@matthewbailey3052 3 жыл бұрын
Very useful, thanks!
@drheaddamage
@drheaddamage 11 ай бұрын
It's funny that the main touted advantage of Python is that it's got dynamically typed variables. And now the first thing the seasoned programmer does is *hammer those variables down to be a single type to avoid issues further down the road* 😁
@aurielklasovsky1435
@aurielklasovsky1435 3 жыл бұрын
Oh my, that is a great product! I wish there was a way to pre order it though... It seems to ve impossible atm🤔
@abrahamvivas9540
@abrahamvivas9540 3 жыл бұрын
And this is how Python get a little bit closer to Haskell... Nice!
@YASYTU
@YASYTU 3 жыл бұрын
But then why don't we just use Haskell?
@ayzack2361
@ayzack2361 3 жыл бұрын
Nice video, man! I like your videos.
@ArjanCodes
@ArjanCodes 3 жыл бұрын
Thanks! Glad you like them.
@FRANKWHITE1996
@FRANKWHITE1996 3 жыл бұрын
Great video. Thanks for sharing.
@aleksandramilicevic1153
@aleksandramilicevic1153 2 жыл бұрын
Hey, could you tell me, why am I getting this error, what can be the problem. TypeError: '>' not supported between instances of 'Person' and 'Person' minute : 06:31
@phoenix3e3
@phoenix3e3 3 жыл бұрын
I haven't used dataclasses yet, but this video does a good job of showing all the features of them! I am curious, can you add any methods to the dataclass that you want that can use that data to calculate something? Or are you limited to just dunder methods? If you can add your own methods than when do you stop using dataclasses and start using regular classes?
@ArjanCodes
@ArjanCodes 3 жыл бұрын
You absolutely can add your own methods to dataclasses. In the end, the dataclass decorator doesn’t change the definition of what a class is in Python, it simply sets it up to better fit a concept that represents data, including ordering, initializing with values, and so on. If you don’t need any of those things, then there’s no need to use dataclasses, simply use a regular class.
@mikelancaster8924
@mikelancaster8924 Жыл бұрын
Thanks, great job!
@Newascap
@Newascap 3 жыл бұрын
Amazing Friday start, thanks for uploading
@ArjanCodes
@ArjanCodes 3 жыл бұрын
Hope you enjoyed it!
@Newascap
@Newascap 3 жыл бұрын
@@ArjanCodes Already on your final thoughts. Learned a new decorator and definitely will apply to my projects from now on.
@ranaanas-cl2cj
@ranaanas-cl2cj 3 жыл бұрын
love ur work thanks please continue we need you
@ArjanCodes
@ArjanCodes 3 жыл бұрын
Thank you so much! No worries, I will :).
@Wachpwnski
@Wachpwnski 3 жыл бұрын
I already knew all this and still watched the video. You are very talented at explaining these concepts and demonstrating them. Keep up the good work!
@ArjanCodes
@ArjanCodes 3 жыл бұрын
Thank you so much, John, happy you enjoyed it!
@andrewferguson6901
@andrewferguson6901 3 жыл бұрын
i take it that the existence of the setattr method "workaround" means that frozen variables should not be used for security purposes?
@ArjanCodes
@ArjanCodes 3 жыл бұрын
I think I'll revisit dataclasses in a future video. The setattr workaround is really ugly, so I'm going to figure out a cleaner way to do this.
@victorh.torres2713
@victorh.torres2713 3 жыл бұрын
Thanks a lot for your explanation! Exists some uses cases when it's better not to used dataclass and better use a regular class?
@ArjanCodes
@ArjanCodes 3 жыл бұрын
Thanks, glad you liked it! One example where using a regular class is better is if the class is very behavior-focused and doesn’t have many instance variables. Also, if you need a very different initializer and don’t need the other features of dataclasses, a regular class is better. Finally, you shouldn’t use a dataclass for classes that act more like interfaces in your system (e.g. abstract classes or protocol classes).
@exoptc1650
@exoptc1650 3 жыл бұрын
Can someone explain to me why the comparison at 04:20 is now True eventhough its 2 different objects? Is it because the values are now compared
@ArjanCodes
@ArjanCodes 3 жыл бұрын
Exactly! This is one thing that dataclasses does: it defines a comparison dunder method for you that compares the data values (which is often what you want when you compare data).
@fabulousfabio8228
@fabulousfabio8228 2 жыл бұрын
Thanks for the video. I just learnt something!
@ArjanCodes
@ArjanCodes 2 жыл бұрын
Glad it was helpful!
@tuxhome3686
@tuxhome3686 3 жыл бұрын
Great video! I learned a lot.
@AJ-et3vf
@AJ-et3vf 2 жыл бұрын
Awesome video! Thank you!
@ArjanCodes
@ArjanCodes 2 жыл бұрын
You're welcome AJ!
@techcode_man
@techcode_man 2 жыл бұрын
Just awesome!! Thank you
@ArjanCodes
@ArjanCodes 2 жыл бұрын
You're welcome!
@Ezechielpitau
@Ezechielpitau 3 жыл бұрын
very clear, good length, witcher references. what's not to like? subscribed :)
@ArjanCodes
@ArjanCodes 3 жыл бұрын
Welcome aboard!
The Factory Design Pattern is Obsolete in Python
23:18
ArjanCodes
Рет қаралды 103 М.
7 Python Code Smells to AVOID at All Costs
22:10
ArjanCodes
Рет қаралды 376 М.
Гениальное изобретение из обычного стаканчика!
00:31
Лютая физика | Олимпиадная физика
Рет қаралды 4,6 МЛН
Арыстанның айқасы, Тәуіржанның шайқасы!
25:51
QosLike / ҚосЛайк / Косылайық
Рет қаралды 699 М.
Python Data Classes Are AMAZING! Here's Why
16:11
Tech With Tim
Рет қаралды 87 М.
This Is Why Python Data Classes Are Awesome
22:19
ArjanCodes
Рет қаралды 818 М.
Dear Functional Bros
16:50
CodeAesthetic
Рет қаралды 562 М.
25 nooby Python habits you need to ditch
9:12
mCoding
Рет қаралды 1,8 МЛН
Data Classes in Python Are The New Standard
20:34
NeuralNine
Рет қаралды 68 М.
Why You Should Think Twice Before Using Returns in Python
21:27
ArjanCodes
Рет қаралды 40 М.
Attrs, Pydantic, or Python Data Classes?
17:10
ArjanCodes
Рет қаралды 88 М.
The Ultimate Guide to Writing Classes in Python
25:39
ArjanCodes
Рет қаралды 121 М.
10 Important Python Concepts In 20 Minutes
18:49
Indently
Рет қаралды 372 М.
Uncle Bob’s SOLID Principles Made Easy 🍀 - In Python!
19:09
ArjanCodes
Рет қаралды 304 М.