คุณเคยพยายามที่จะแผ่อาร์เรย์ที่ซ้อนกันแบบนี้หรือไม่?
หากคุณพบว่ามันยากที่จะทำให้อาร์เรย์ที่ซ้อนกันแบบนี้แบนราบ คุณยินดีที่จะค้นหาวิธีแก้ปัญหาที่สวยงามเช่นนี้:
…หรือเพื่อรับออบเจ็กต์ของพจนานุกรมที่ซ้อนกันอย่างลึกล้ำด้านล่างในโค้ดหนึ่งบรรทัด
หากคุณกำลังมองหาไลบรารี่ที่มียูทิลิตี้ที่มีประโยชน์ในการจัดการกับอ็อบเจกต์ Python ด้านบน pydash จะเป็นไลบรารี่ของคุณ
Pydashเป็นซิงก์ในครัวของไลบรารียูทิลิตี้ Python สำหรับทำ "สิ่งของ" ในลักษณะที่ใช้งานได้
ในการติดตั้ง pydash ตรวจสอบให้แน่ใจว่าเวอร์ชัน Python ของคุณคือ ≥ 3.6 จากนั้นพิมพ์:
pip install pydash
คุณสามารถแผ่รายการ Python ที่ซ้อนกันโดยใช้py_.flattenวิธีการ:
จะเกิดอะไรขึ้นถ้ารายการของคุณซ้อนกันอย่างด้านล่าง
นั่นคือเมื่อpy_.flatten_deepวิธีการนี้มีประโยชน์:
ถ้าคุณสามารถแบนรายการ คุณสามารถเปลี่ยนรายการที่แบนเป็นรายการที่ซ้อนกันได้หรือไม่ ใช่สามารถทำได้ด้วยpy_.chunkวิธี:
นีซ! องค์ประกอบในรายการแบ่งออกเป็นกลุ่มละ 2
หากต้องการละแอตทริบิวต์จากพจนานุกรม เราสามารถใช้py_.omitเมธอด:
คุณจะได้รับpriceของappleจากWalmartที่อยู่in seasonในพจนานุกรมที่ซ้อนกันเช่นด้านล่างได้อย่างไร
โดยปกติ คุณต้องใช้วงเล็บจำนวนมากเพื่อรับข้อมูลดังกล่าว:
[2, 4]
เย็น! คุณยังสามารถรับองค์ประกอบในอาร์เรย์โดยใช้[index]:
2
ในการรับดัชนีขององค์ประกอบในรายการโดยใช้ฟังก์ชัน ให้ใช้py_.find_indexวิธีการ:
py_.find_indexวิธีช่วยให้คุณได้ดัชนีของวัตถุที่ตรงกับรูปแบบบางอย่าง แต่ถ้าคุณต้องการรับไอเท็มในรายการแทนที่จะเป็นดัชนีล่ะ
สามารถทำได้ด้วยpy_.filterวิธีดังนี้
บางครั้งรายการพจนานุกรมของคุณสามารถซ้อนกันได้ดังนี้ คุณจะได้รับtasteแอตทริบิวต์ของapple?
โชคดีที่สามารถทำได้ง่ายๆ ด้วยpy_.map_วิธีการ:
คุณสามารถเรียกใช้ฟังก์ชันได้ n ครั้งโดยใช้py_.timesวิธีการ วิธีนี้เป็นทางเลือกที่ดีสำหรับลูป
บางครั้งคุณอาจต้องการใช้หลายวิธีกับวัตถุ แทนที่จะเขียนโค้ดหลายบรรทัด คุณสามารถใช้วิธีทั้งหมดพร้อมกันได้หรือไม่
นั่นคือเมื่อวิธีการผูกมัดจะสะดวก ในการปรับใช้เมธอด chaining ในอ็อบเจ็กต์ ใช้py_.chainวิธี:
โปรดทราบว่าการรันโค้ดด้านบนจะไม่ให้ค่าแก่เรา:
<pydash.chaining.Chain at 0x7f8d256b0dc0>
นี้เรียกว่าการประเมินผลขี้เกียจ การประเมินแบบขี้เกียจจะเก็บการประเมินนิพจน์ไว้จนกว่าจะต้องการค่า ซึ่งหลีกเลี่ยงการประเมินซ้ำ
หากคุณต้องการใช้วิธีการของคุณเองแทนวิธีการของ pydash ให้ใช้mapวิธีนี้:
ในการแทนที่ค่าเริ่มต้นของ chain ด้วยค่าอื่น ให้ใช้plantวิธีการ:
เย็น! แทนที่['apple', 'orange', 'grapes']ด้วย['apple', 'orange']ในขณะที่ใช้โซ่เดียวกัน!
ขอแสดงความยินดี! คุณเพิ่งได้เรียนรู้วิธีจัดการวัตถุ Python อย่างมีประสิทธิภาพด้วย pydash ฉันหวังว่าบทความนี้จะเพิ่มเครื่องมือที่มีประโยชน์เพิ่มเติมให้กับชุดเครื่องมือ Python ของคุณ
มีวิธีการเจ๋ง ๆ อีกมากมายที่ pydash มอบให้ซึ่งฉันไม่สามารถครอบคลุมได้ในบทความนี้ ผมขอแนะนำให้คุณตรวจสอบการอ้างอิง API pydash ของ
อย่าลังเลที่จะแยกและเล่นกับรหัสสำหรับบทความนี้ใน repo Github นี้:
ฉันชอบเขียนเกี่ยวกับแนวคิดวิทยาศาสตร์ข้อมูลพื้นฐานและเล่นกับอัลกอริธึมและเครื่องมือวิทยาศาสตร์ข้อมูลที่แตกต่างกัน คุณสามารถเชื่อมต่อกับฉันในLinkedInและTwitter
ติดดาวrepo นี้หากคุณต้องการตรวจสอบรหัสสำหรับบทความทั้งหมดที่ฉันเขียน ติดตามฉันบนสื่อเพื่อรับทราบข้อมูลล่าสุดเกี่ยวกับบทความวิทยาศาสตร์ข้อมูลล่าสุดของฉันเช่นนี้
คุณต้องเคยได้ยินเกี่ยวกับปลั๊กอิน ChatGPT อันทรงพลังใหม่ทั้งหมด เช่น เบราว์เซอร์ ตัวแปลรหัส ฯลฯ แต่มีปัญหา การเข้าถึงปลั๊กอินถูกจำกัดไว้เฉพาะรายการรอ และหลายคนไม่สามารถเข้าถึงได้
สัปดาห์นี้ ฉันได้รับอีเมลจากสมาชิกรายการอีเมลรายวัน พวกเขาต้องการทราบ: คุณเข้าชมแหล่งข้อมูลใดรายวัน รายสัปดาห์ และรายเดือน คำถามที่ดี! ฉันยินดีที่จะพยายามแบ่งปันข้อมูลเชิงลึกเกี่ยวกับเวิร์กโฟลว์และทรัพยากรยอดนิยมที่ฉันใช้
โดย Alyson Lee ที่ปรึกษาด้านการจัดการภาครัฐ กระบวนการจัดสรรประจำปีของรัฐบาลกลางเป็นหัวใจสำคัญของความพยายามของเราในการให้ทุนสนับสนุนการกำจัดก๊าซคาร์บอนไดออกไซด์ (CDR) ในแต่ละปี Carbon180 จะส่งคำขอไปยังสำนักงานรัฐสภาหลายแห่งเพื่อช่วยชี้แนะว่าเงินดอลลาร์ในปีหน้าจะไหลไปที่ใด
ในโลกปัจจุบันที่เชื่อมต่อกันมากเกินไป ระบบสื่อมีบทบาทสำคัญในการกำหนดความคิดเห็นของสาธารณชน และเป็นผลให้เกิดขึ้นในการตัดสินใจตามระบอบประชาธิปไตย ในการวิเคราะห์อย่างลึกซึ้งเกี่ยวกับเศรษฐศาสตร์การเมืองของการสื่อสาร นักวิชาการ Robert McChesney ท้าทายภูมิปัญญาดั้งเดิมและนำเสนอสิ่งที่เขาเรียกว่า "ความจริงห้าประการ" เกี่ยวกับสื่อ
เมื่อคุณโตขึ้น คุณมักจะได้รับการบอกว่าโลกเป็นอย่างที่มันเป็น และชีวิตของคุณก็แค่ใช้ชีวิตอยู่ในโลก ไม่เสี่ยงชีวิต แค่เดินตามเส้นทางที่กำหนดและตายในที่สุด และพยายามอย่า ทุบกำแพงมากเกินไป แต่นั่นเป็นชีวิตที่จำกัดมาก
ในโลกที่เปลี่ยนแปลงอย่างรวดเร็วและการแข่งขันในปัจจุบัน อาชีพของคนๆ หนึ่งมีบทบาทสำคัญในการเติบโตส่วนบุคคล ความมั่นคงทางการเงิน และความพึงพอใจในชีวิตโดยรวม อย่างไรก็ตาม ผู้คนจำนวนมากพบว่าตัวเองติดอยู่ในวงจรของความเมื่อยล้าและความไม่พอใจอย่างไม่หยุดยั้ง ค่อยๆ สูญเสียชีวิตการทำงานไป