Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

Python SyntaxError:ไม่มีวงเล็บในการเรียกโซลูชัน 'print'

ใน Python 3 คุณต้องใส่วงเล็บปิดคำสั่งการพิมพ์ทั้งหมด หากคุณพยายามพิมพ์สตริงไปยังคอนโซลโดยไม่ใส่สตริงในวงเล็บ คุณจะพบข้อผิดพลาด "SyntaxError:Missing parentheses in call to 'print'"

คู่มือนี้จะอธิบายความหมายของข้อผิดพลาดนี้และวิธีใช้คำสั่งพิมพ์ใน Python เราจะอธิบายตัวอย่างข้อผิดพลาดนี้เพื่อให้คุณได้เรียนรู้วิธีแก้ไข

SyntaxError:ไม่มีวงเล็บในการเรียกให้ "พิมพ์"

Python 3 เป็นการอัพเดทครั้งใหญ่ครั้งที่สามของภาษาการเขียนโปรแกรม ในช่วงไม่กี่ปีที่ผ่านมา มันได้กลายเป็นเวอร์ชันที่นิยมใช้ของ Python

Python 3 เปลี่ยนวิธีการเขียนคำสั่งการพิมพ์ สแตนด์อโลน print คำสั่งทำงานใน Python 2 และพิมพ์คำสั่งไปยังคอนโซล

ใน Python 3 print เป็นฟังก์ชัน ซึ่งหมายความว่าคุณต้องล้อมรอบเนื้อหาของสตริงที่คุณต้องการพิมพ์ไปยังคอนโซลในวงเล็บเหมือนกับที่คุณทำกับการเรียกใช้ฟังก์ชันทั่วไป

ตัวอย่างสถานการณ์

เขียนโปรแกรมที่พิมพ์ชื่อนักเรียนทุกคนในชั้นประถมศึกษาปีที่ 4 ที่มีชื่อขึ้นต้นด้วย "A" ในการเริ่มต้น ให้กำหนดรายชื่อที่มีชื่อของนักเรียนในชั้นเรียน:

students = ["Alex", "Alexander", "Piper", "Molly", "Hannah"]

ถัดไป เขียน for loop ที่วนซ้ำทุกรายการในรายการนี้ ใน for loop เราจะใช้ if คำสั่งตรวจสอบว่าแต่ละชื่อขึ้นต้นด้วย “A” หรือไม่:

for s in students:
	     if s.startswith("A") == True:
		          print s

startwith() วิธีการตรวจสอบว่าสตริงเริ่มต้นด้วยอักขระเฉพาะหรือชุดอักขระ รหัสตรวจสอบว่าแต่ละชื่อในรายการ "นักเรียน" ขึ้นต้นด้วย "A" หรือไม่

81% ของผู้เข้าร่วมกล่าวว่าพวกเขารู้สึกมั่นใจมากขึ้นเกี่ยวกับโอกาสในการทำงานด้านเทคโนโลยีหลังจากเข้าร่วม bootcamp จับคู่กับ Bootcamp วันนี้

ผู้สำเร็จการศึกษาจากหลักสูตร bootcamp โดยเฉลี่ยใช้เวลาน้อยกว่าหกเดือนในการเปลี่ยนอาชีพ ตั้งแต่เริ่มต้น bootcamp ไปจนถึงหางานแรก

เพิ่มคำสั่งพิมพ์พิเศษต่อท้ายโค้ดที่บอกเราว่าโปรแกรมทำงานเสร็จแล้ว:

print "Above are all the students whose names begin with A."

ตอนนี้คุณพร้อมที่จะรันโปรแกรมแล้ว:

  File "main.py", line 5
	    print s
      	^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print(s)?

รหัสแจ้งให้เราทราบว่ามีข้อผิดพลาดทางไวยากรณ์ในโปรแกรม

การแก้ปัญหา

อย่างสะดวก Python ได้เสนอวิธีแก้ปัญหาในข้อความแสดงข้อผิดพลาดแล้ว

เนื่องจากในเวอร์ชันก่อนหน้าของ Python 3 การลืมใส่วงเล็บรอบคำสั่งการพิมพ์ทำให้เกิดข้อผิดพลาดซึ่งแสดงเฉพาะ "ไวยากรณ์ที่ไม่ถูกต้อง" ข้อความนี้ไม่ชัดเจนเนื่องจากไวยากรณ์ที่ไม่ถูกต้องอาจเกิดจากปัญหาหลายประการ ดังนั้น Python จึงแนะนำข้อความแสดงข้อผิดพลาด "วงเล็บที่หายไป" ใหม่เพื่อช่วยผู้ใช้เป็นหลัก

ในการแก้ปัญหานี้ ให้ใส่ค่าทั้งหมดที่คุณต้องการพิมพ์ลงในคอนโซลในวงเล็บ:

for s in students:
	     if s.startswith("A") == True:
		          print(s)

print("Above are all the students whose names begin with A.")

คุณได้ใส่ “s” บน print โค้ดในวงเล็บ คุณยังใส่สตริงสุดท้ายที่คุณพิมพ์ไปยังคอนโซลในวงเล็บ มาดูกันว่าโปรแกรมทำงานหรือไม่:

Alex
Alexander
Above are all the students whose names begin with A.

รหัสของเราแสดงให้เราเห็นว่ามีนักเรียนสองคนที่มีชื่อขึ้นต้นด้วย A เมื่อทำซ้ำรายชื่อนักเรียนแล้ว โปรแกรมของเราจะพิมพ์ข้อความที่อธิบายผลลัพธ์

บทสรุป

ข้อผิดพลาด Python “SyntaxError:ไม่มีวงเล็บในการเรียกใช้ 'พิมพ์'” ปรากฏขึ้นเมื่อคุณพยายามพิมพ์ค่าไปยังคอนโซลโดยไม่ใส่ค่านั้นในวงเล็บ

ในการแก้ไขข้อผิดพลาดนี้ ให้เพิ่มวงเล็บรอบๆ ข้อความสั่งใดๆ ที่คุณต้องการพิมพ์ไปยังคอนโซล นี่เป็นเพราะใน Python 3 print ไม่ใช่คำสั่ง มันเป็นฟังก์ชั่น คุณต้องเรียกใช้ฟังก์ชันโดยใช้วงเล็บหากต้องการเรียกใช้

ตอนนี้คุณมีความรู้ที่จำเป็นในการแก้ไขข้อผิดพลาดทั่วไปของ Python อย่างมืออาชีพแล้ว!