A collection of 188 posts
Walrus Operator อ่านครั้งแรกคือ อิหยังว้าาาาา แต่พอมาดูในรายละเอียดมันทำให้การเขียน Script ของเราสั้นลงเยอะมาก วันนี้เราลองมาดูกันว่า มันคืออะไร และใช้ยังไง...
ก่อนหน้านี้ เราใช้ CSV เป็น Format ในการเก็บข้อมูลกันมาบ่อย ๆ แล้ว แต่ปัญหามันจะเกิดเมื่อเราทำงานกับข้อมูลขนาดใหญ่มาก ๆ CSV จะเริ่มมีอาการหน่วง และ ใหญ่มาก ๆ วันนี้เราจะมาแนะนำ Parquet อีก Format ที่จะเข้ามาแก้ปัญหานี้กัน...
หนึ่งในเรื่องลึกลับของ Python ที่หลาย ๆ อาจจะยังไม่รู้ เมื่อเรา Clone Object แล้ว ทำไม Mutate Object แล้วมันเปลี่ยนไปหมดเลย วันนี้เรามาหาคำตอบไปพร้อม ๆ กันว่า เราจะ Clone Object ยังไงให้รอดกัน...
การเขียน OOP บน Python เราน่าจะเจอปัญหาที่เกิดมาจากความยืดหยุ่น ที่มากเกินไปของ Python ทำให้สิ่งที่ควรจะเรียกไม่ได้ กลับเรียกได้ และอาจทำให้เกิดปัญหาหลาย ๆ อย่างตามมา เราก็ต้องมาไล่เช็ค มันก็จะเสียเวลามาก วันนี้เรามาแนะนำ 3 Decorator ที่จะทำให้การเขียนโปรแกรมแบบ OOP บน Python ทำได้ง่ายขึ้นกัน...
ตอนก่อน เรามาเล่าเรื่อง Decorator ใน Python กันไปแล้ว มาในตอนนี้เราอยากจะมาเล่าถึง 3 Decorator ที่เราใช้บ่อย ๆ ส่วนใหญ่จะเป็น Snippet เขียนเองทั้งนั้น วันนี้มาดูกันว่าจะมี Decorator ตัวไหนบ้าง...
เมื่อหลายวันก่อนมีน้องถามเรื่องของ Functools ใน Python เลยทำให้นึกถึงความเป็น First Class Citizen ของ Function ใน Python ว่ามันเป็นชนชั้นที่ความสามารถเยอะมาก ๆ เราสามารถ Pass เป็น Argument เข้าไปซ้อน ๆ Function อีกทีได้ แต่ Feature ตัวนึงที่เจ๋งมาก ๆ และหลาย ๆ คนมองข้ามไปคือ Decorator...
หลาย ๆ ครั้งเวลาเราเขียน Python โดยเราอาจจะเจอเคสที่เราจะต้องเขียน Function และมันจะต้องคืนค่ากลับมาเป็น Iterator ต่าง ๆ เมื่อเราทำงานกับข้อมูลใหญ่ ๆ เป็นไปได้ยากที่เราจะรันเอาผลทั้งหมดมาใช้งานต่อได้ การใช้ Generator เป็นวิธีที่ทำให้เราสามารถแก้ปัญหานี้ได้...
ใช้เวลาเป็นเดือนกว่าจะหาวิธีการติดตั้ง OpenCV บน Mac M1 ได้ วันนี้เราติดตั้งได้แล้ว เลยจะมาแชร์วิธีการติดตั้งทีละขั้นตอน ๆ เลย...
วันนี้ขอเปิด Series ใหม่ด้วยเรื่องของการโจมตียอดนิยมอย่างการทำ DNS Spoofing เป็นทริกที่ใช้กันเยอะมาก ๆ เพื่อล่อล่วงให้เราเข้า Phishing Site แล้วล้วงข้อมูลได้เลย...