Python เบื้องต้น: การเขียนฟังก์ชัน
Hugo Bowne-Anderson
Instructor
ไม่ใช่ทุก object ที่เข้าถึงได้จากทุกที่ในสคริปต์
ขอบเขต (Scope) — ส่วนของโปรแกรมที่ object หรือชื่อนั้นเข้าถึงได้
Global scope — กำหนดในส่วนหลักของสคริปต์
Local scope — กำหนดภายในฟังก์ชัน
Built-in scope — ชื่อใน module built-ins ที่กำหนดไว้ล่วงหน้า
def square(value): """Returns the square of a number.""" new_val = value ** 2 return new_valsquare(3)
9
new_val
<hr />----------------------------------------------------------------
NameError Traceback (most recent call last)
<ipython-input-3-3cc6c6de5c5c> in <module>()
<hr />-> 1 new_value
NameError: name 'new_val' is not defined
new_val = 10 def square(value): """Returns the square of a number.""" new_val = value ** 2 return new_valsquare(3)
9
new_val
10
new_val = 10 def square(value): """Returns the square of a number.""" new_value2 = new_val ** 2 return new_value2square(3)
100
new_val = 20
square(new_val)
400
new_val = 10 def square(value): """Returns the square of a number.""" global new_val new_val = new_val ** 2 return new_valsquare(3)
100
new_val
100
Python เบื้องต้น: การเขียนฟังก์ชัน