การนำเข้าส่วนหนึ่งของโมดูลใน Python
วิธีการที่อธิบายในบทเรียนก่อนหน้านี้
เป็นการนำเข้าเนื้อหาทั้งหมดของโมดูล อย่างไรก็ตาม
อาจมีความจำเป็นต้องใช้เพียง
บางส่วนของโค้ดจากโมดูล เช่น ฟังก์ชัน
เพียงไม่กี่ตัว สำหรับสิ่งนี้จำเป็นต้องเปลี่ยนไวยากรณ์
ของโครงสร้างที่ใช้ในการนำเข้า
ขั้นแรกให้เขียนคีย์เวิร์ด from
ทางด้านขวาของมันระบุชื่อโมดูล
จากนั้นเขียนคำสั่ง import,
ทางด้านขวาของซึ่งระบุฟังก์ชัน
ที่ต้องการ:
pythonfrom โมดูล import ฟังก์ชันที่ต้องการ
สมมติว่าในโมดูล lib ของเรามี
ฟังก์ชันต่อไปนี้:
lib.pydef func1():
print(1)
def func2():
print(2)
def func3():
print(3)
ลองนำเข้าเฉพาะ func1 และ
func2:
test.pyfrom lib import func1, func2
โครงสร้างนี้สะดวกตรงที่ เมื่อเรียกใช้ฟังก์ชัน ไม่จำเป็นต้องระบุชื่อ ของโมดูลที่นำเข้า:
test.pyfunc1()
func2()
หลังจากดำเนินการโค้ดเสร็จ ในคอนโซลจะแสดง ผลลัพธ์การทำงานของฟังก์ชันเหล่านี้:
test.py1
2
ลองเรียกใช้ func3:
test.pyfunc3()
หลังจากรันโค้ด ในคอนโซลจะแสดง ข้อผิดพลาด:
errorNameError: name 'func3' is not defined. Did you mean: 'func1'?
สร้างโมดูล custom_math ซึ่ง
จะมีฟังก์ชันต่อไปนี้:
get_sum สำหรับบวกตัวเลขสองตัว
get_divide สำหรับหารตัวเลขสองตัว
get_cube สำหรับยกกำลังสามของตัวเลข
ให้นำเข้าในไฟล์ทำงานเฉพาะ
ฟังก์ชัน get_divide และ get_cube
ในโมดูล user มีตัวแปร
ต่อไปนี้:
pythonname = 'user1'
email = 'user1@mail.com'
password = 'qwerty'
ให้นำเข้าจากโมดูลนี้เฉพาะชื่อและอีเมล ของผู้ใช้ แสดงผลในคอนโซล