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

จะดึงซอร์สโค้ดจากวัตถุ Python ได้อย่างไร


เราใช้เมธอด getsource() ในการตรวจสอบโมดูลเพื่อรับซอร์สโค้ดของฟังก์ชัน

inspect.getsource(object)

ส่งกลับข้อความของซอร์สโค้ดสำหรับวัตถุ อาร์กิวเมนต์อาจเป็นโมดูล คลาส เมธอด ฟังก์ชัน ย้อนกลับ เฟรม หรืออ็อบเจกต์โค้ด ซอร์สโค้ดถูกส่งกลับเป็นสตริงเดียว IOError จะเพิ่มขึ้นหากไม่สามารถเรียกซอร์สโค้ดได้

หากฟังก์ชันถูกคอมไพล์จากสตริง สตรีม หรือนำเข้าจากไฟล์ที่คอมไพล์แล้ว คุณจะไม่สามารถเรียกซอร์สโค้ดของฟังก์ชันนั้นได้

เรานำเข้าโมดูลการตรวจสอบและดึงซอร์สโค้ดสำหรับสคริปต์ที่กำหนดดังนี้

ตัวอย่าง

#baz.py
import inspect
class foo:
      def bar():
          print 'Hello'
print(inspect.getsource(foo))

ผลลัพธ์

C:/Users/TutorialsPoint1/~.py
class foo:
      def bar():
          print 'Hello'