6
เหตุใดจึงต้องใช้วิธีการโมดูลระบบปฏิบัติการของ Python แทนที่จะเรียกใช้คำสั่งเชลล์โดยตรง
ฉันพยายามเข้าใจว่าอะไรคือแรงจูงใจเบื้องหลังการใช้ฟังก์ชั่นไลบรารี่ของ Python สำหรับการทำงานเฉพาะระบบปฏิบัติการเช่นการสร้างไฟล์ / ไดเรกทอรีการเปลี่ยนคุณสมบัติของไฟล์ ฯลฯ แทนที่จะเพียงแค่เรียกใช้คำสั่งเหล่านั้นผ่านทางos.system()หรือsubprocess.call()? ยกตัวอย่างเช่นทำไมฉันต้องการที่จะใช้os.chmodแทนการทำos.system("chmod...")? ฉันเข้าใจว่ามันเป็น "pythonic" มากกว่าที่จะใช้วิธีการไลบรารีที่มีอยู่ของ Python ให้มากที่สุดแทนที่จะเป็นเพียงการดำเนินการคำสั่งเชลล์โดยตรง แต่มีแรงจูงใจอื่น ๆ ที่อยู่เบื้องหลังการทำเช่นนี้จากมุมมองการทำงานหรือไม่? ฉันแค่พูดถึงการใช้คำสั่งเชลล์แบบบรรทัดเดียวง่ายๆที่นี่ เมื่อเราต้องการการควบคุมการปฏิบัติงานมากขึ้นฉันเข้าใจว่าการใช้subprocessโมดูลมีเหตุผลมากกว่า