Python เป็นภาษาระดับสูงที่ออกแบบมาสำหรับการทำโค้ดทั่วไป ไม่ใช่สำหรับปัญหาเฉพาะใดๆ เราสามารถใช้เพื่อวัตถุประสงค์ทั่วไป เช่น การสร้างเว็บไซต์โดยใช้ python หรือการวิเคราะห์ข้อมูลโดยใช้ภาษาไพ ธ อนนี้ การเขียนโปรแกรม “Python” ยังมีอาร์กิวเมนต์ command_line อาร์กิวเมนต์บรรทัดคำสั่งคืออาร์กิวเมนต์ที่เราให้ไว้บนคอนโซลหรือเทอร์มินัลของระบบปฏิบัติการใดๆ หลังจากกล่าวถึงชื่อไฟล์โค้ดพร้อมกับนามสกุลไฟล์ นอกจากนี้เรายังสามารถกำหนดเป็น ในโปรแกรมใดๆ ค่าที่ส่งผ่านพรอมต์คำสั่งซึ่งเรียกว่าอาร์กิวเมนต์บรรทัดคำสั่ง ในคู่มือนี้ เราจะพูดถึงอาร์กิวเมนต์บรรทัดคำสั่งในการเขียนโปรแกรม 'Python'
วิธีการสำหรับอาร์กิวเมนต์บรรทัดคำสั่งใน Python
เราจะอธิบายวิธีการทั้งหมดโดยละเอียดในคู่มือนี้ และแสดงการสาธิตเชิงปฏิบัติของวิธีการทั้งหมดเหล่านั้นด้วย
ตัวอย่าง # 01: โดยวิธี sys.argv
เรากำลังทำรหัสหลามเหล่านี้ในแอพ “Spyder” เราสามารถเข้าถึงตัวแปรบรรทัดคำสั่งและฟังก์ชันต่างๆ ได้โดยการนำเข้าระบบ ดังนั้นเราจึงนำเข้า 'sys' จากนั้นเราจะประกาศและเริ่มต้นตัวแปร 'num' ด้วย 'len(sys.argv)' “argv” จะเป็นรายการของค่าสตริงที่เป็นอาร์กิวเมนต์ที่บรรทัดคำสั่งของเราจะกลายเป็น “len” หมายถึงความยาวของอาร์กิวเมนต์ที่ส่งผ่าน ดังนั้น ในตัวแปร 'num' จำนวนของค่าที่ส่งผ่านบนเทอร์มินัลเมื่อเก็บบรรทัดคำสั่ง
นอกจากนี้เรายังแสดงหมายเลขอาร์กิวเมนต์ที่ส่งผ่านโดยใช้ 'พิมพ์' ด้านล่างนี้ เราใส่ “sys.argv[0]” ลงในคำสั่งการพิมพ์ “argv” จะเก็บชื่อโปรแกรมหรือชื่อไฟล์รหัสไว้เสมอ ดังนั้น ชื่อของไฟล์ที่เราสร้างจะแสดงผลบนเทอร์มินัล หลังจากนี้ เราพิมพ์อาร์กิวเมนต์เหล่านั้นซึ่งส่งผ่านไปยังเทอร์มินัล มันจะพิมพ์ตัวเลขทั้งหมดที่เราส่งผ่านเป็นอาร์กิวเมนต์บรรทัดคำสั่งบนหน้าจอคอนโซล
ด้านล่างนี้ เราได้กำหนด for loop และประกาศตัวแปร 'a' ซึ่งมีช่วงระหว่าง '1' ถึงความยาวของ argv ซึ่งเก็บอยู่ใน 'num' พิมพ์อาร์กิวเมนต์ทั้งหมดบนคอนโซล “argv[a]” เก็บอาร์กิวเมนต์ command_line ทั้งหมด นอกจากนี้ยังแสดงบนคอนโซล ตอนนี้ เรากำลังเริ่มต้น 'ผลรวม' เพราะเราต้องการคำนวณผลรวมของค่าทั้งหมดที่เราจะส่งผ่านเมื่อดำเนินการบนเทอร์มินัล
เราใช้ลูป 'for' อีกครั้งและส่งผ่านช่วง แต่คราวนี้ เรากำลังคำนวณผลรวมของค่าทั้งหมดที่เราส่งต่อไปยังเทอร์มินัล ผลรวมนี้จะถูกเก็บไว้ในตัวแปร 'ผลรวม' จากนั้น เรายังพิมพ์ผลรวมของค่าทั้งหมดที่เราจะส่งผ่านในขณะที่ดำเนินการบนเทอร์มินัล
นำเข้า sysหนึ่ง = เท่านั้น ( sys . argv )
พิมพ์ ( 'ข้อโต้แย้งทั้งหมดที่ส่งผ่านมาที่นี่ :' , หนึ่ง )
พิมพ์ ( ' \n ชื่อของไฟล์ Python:' , sys . argv [ 0 ] )
พิมพ์ ( ' \n ข้อโต้แย้งที่เราได้ผ่าน:' , จบ = ' ' )
สำหรับ เอ ใน แนว ( 1 , หนึ่ง ) :
พิมพ์ ( sys . argv [ เอ ] , จบ = ' ' )
ซำ = 0
สำหรับ ผม ใน แนว ( 1 , หนึ่ง ) :
รวม + = int ( sys . argv [ ผม ] )
พิมพ์ ( ' \n \n ผลรวมของอาร์กิวเมนต์ที่ผ่านไป : ' , ซำ )
ในเทอร์มินัล ก่อนอื่นเราใส่คีย์เวิร์ด 'run' จากนั้น วางชื่อไฟล์พร้อมกับนามสกุลที่เหมาะสม และส่งอาร์กิวเมนต์บรรทัดคำสั่งที่นี่ ดังนั้นจึงแสดงบรรทัดทั้งหมดตามที่เรากำหนดไว้ในโค้ดด้านบน ขั้นแรกจะแสดงความยาวของอาร์กิวเมนต์บรรทัดคำสั่ง ตามด้วยชื่อของไฟล์ หลังจากนี้จะแสดงอาร์กิวเมนต์บรรทัดคำสั่งทั้งหมดและยังแสดงผลรวมของอาร์กิวเมนต์ทั้งหมดด้วย
ตัวอย่าง # 02: โดยวิธี argparse
ตอนนี้ เรากำลังใช้เมธอด “argparse” ในตัวอย่างนี้ ก่อนอื่นเรานำเข้า 'argparse' ดังนั้นเราจะเข้าถึงตัวแปรและหน้าที่ของสิ่งนี้ เราเริ่มต้นตัวแปร 'ข้อมูล' และจัดเก็บบรรทัดที่เราจะใช้ในโค้ดของเรา หลังจากนี้ เรากำลังเริ่มต้น 'parser' และใน 'description' เราส่งตัวแปร 'data' ซึ่งเราได้เก็บข้อความที่เราต้องการแสดงและเราใส่สิ่งเหล่านี้ไว้ในตัวแปร 'my_parser' เรายังใส่ “parse.args()” ต่อท้าย
นำเข้า argparseข้อมูล = 'เรากำลังใช้วิธี argparse ที่นี่'
my_parser = argparse ArgumentParser ( คำอธิบาย = ข้อมูล )
my_parser parse_args ( )
ดูผลลัพธ์ด้านล่าง เมื่อเราส่ง '-h' เป็นอาร์กิวเมนต์บรรทัดคำสั่ง อันดับแรกจะแสดงข้อความที่เราจัดเก็บไว้ในตัวแปร 'data' และยังแสดง 'อาร์กิวเมนต์ทางเลือก' เนื่องจาก 'h' นี้แสดงข้อความช่วยเหลือ เมื่อเราใส่ '-o' เป็นอาร์กิวเมนต์บรรทัดคำสั่ง จะแสดงข้อความแสดงข้อผิดพลาดว่าเป็นอาร์กิวเมนต์ที่ไม่รู้จัก
ตัวอย่าง # 03: โดยวิธี getopt
นี่คือวิธีสุดท้ายที่เราใช้ในโค้ดนี้ เรากำลังนำเข้า 'sys' เช่นเดียวกับ 'getopt' ในรหัสนี้ 'getopt' นี้เป็น parser ที่เราใช้สำหรับอาร์กิวเมนต์บรรทัดคำสั่ง จากนั้นในตัวแปร 'argumentList' เราได้ส่ง 'sys.argv[1:]' เพื่อลบอาร์กิวเมนต์แรกที่เรากำลังส่งผ่านในบรรทัดคำสั่ง เราเริ่มต้น 'my_option' ด้วย 'hmo:'
หลังจากนี้ เรากำลังเริ่มต้นตัวแปร “my_long_option” เราใช้ 'ลอง' ที่นี่ซึ่งจะตรวจสอบข้อผิดพลาด หลังจากนี้ เรากำลังแยกวิเคราะห์อาร์กิวเมนต์ 'getopt' มีทั้งตัวเลือกแบบสั้นและแบบยาว พร้อมด้วยตัวเลือกในการกำหนดค่า หลังจากนี้ เรากำลังตรวจสอบอาร์กิวเมนต์ทั้งหมดที่เราจะส่งผ่านเป็นอาร์กิวเมนต์บรรทัดคำสั่ง หากอาร์กิวเมนต์บรรทัดคำสั่งคือ '-h' หรือ '–Help' จะพิมพ์ข้อความที่ให้ไว้ด้านล่าง หากอาร์กิวเมนต์บรรทัดคำสั่งคือ '-m' หรือ '—My_file' จะแสดงข้อความที่เขียนหลังจากนี้
นอกจากนี้ หากอาร์กิวเมนต์บรรทัดคำสั่งคือ '-o' หรือ '–Output' ก็จะแสดงข้อความที่เราได้เขียนไว้ที่นี่หลังจากนี้ด้วย หากอาร์กิวเมนต์บรรทัดคำสั่งไม่ได้มาจากทั้งหมดข้างต้น จะแสดงข้อความแสดงข้อผิดพลาดเมื่อเราวาง 'getopt.js' ข้อผิดพลาด” ในรหัส
นำเข้า ราดหน้า , sysข้อโต้แย้งรายการ = sys . argv [ 1 : ]
my_options = 'กลางคืน:'
new_long_options = [ 'ช่วย' , 'มาย_ไฟล์' , 'เอาท์พุท='
ลอง :
ข้อโต้แย้ง , ค่า = ราดหน้า . ราดหน้า ( ข้อโต้แย้งรายการ , my_options , new_long_options )
สำหรับ my_Argument , my_Value ใน อาร์กิวเมนต์:
ถ้า my_Argument ใน ( '-ชม' , '--ช่วย' ) :
พิมพ์ ( “การแสดงความช่วยเหลือ” )
เอลฟ์ my_Argument ใน ( '-ม' , '--My_file' ) :
พิมพ์ ( 'กำลังแสดง file_name:' , sys . argv [ 0 ] )
เอลฟ์ my_Argument ใน ( '-โอ' , '--เอาท์พุท' ) :
พิมพ์ ( ( 'การเปิดใช้งานโหมดเอาต์พุตพิเศษ (% s)' ) % ( my_Value ) )
ยกเว้น ราดหน้า . ข้อผิดพลาด เช่น ผิดพลาด:
พิมพ์ ( str ( ผิดพลาด ) )
ที่นี่คุณจะเห็นว่าเมื่อเราใส่ '-h' เป็นบรรทัดคำสั่ง จะแสดงข้อความเดียวกันกับที่เราได้เขียนไว้ในโค้ด เมื่อเราใส่อาร์กิวเมนต์บรรทัดคำสั่งสองรายการเป็น “–Help” และ “-m” จะแสดงข้อความสองข้อความด้านล่าง ในอาร์กิวเมนต์บรรทัดคำสั่ง '-o' เราได้ส่งสตริงที่แสดงในข้อความด้วย
บทสรุป
เราได้จัดทำคู่มือนี้เพื่อช่วยให้คุณเรียนรู้แนวคิดของ 'อาร์กิวเมนต์บรรทัดคำสั่ง' ใน 'Python' เราได้สำรวจ 'อาร์กิวเมนต์บรรทัดคำสั่ง' และอธิบายวิธีการสามวิธีที่นี่ เราได้อธิบายอาร์กิวเมนต์บรรทัดคำสั่งว่ากระบวนการส่งผ่านค่าไปยังโปรแกรมพร้อมกับชื่อโปรแกรมตามเวลาที่ดำเนินการผ่านพรอมต์คำสั่ง