Lý thuyết Tin học 10 Bài 28 (Kết nối tri thức): Phạm vi của biến
Tóm tắt lý thuyết Tin học lớp 10 Bài 28: Phạm vi của biến ngắn gọn, chi tiết sách Kết nối tri thức sẽ giúp học sinh nắm vững kiến thức trọng tâm, ôn luyện để học tốt Tin học 10.
Lý thuyết Tin học 10 Bài 28: Phạm vi của biến
1. Phạm vi của biến trong khai báo hàm
Trong Python tất cả các biến khai thác bên trong hàm đều có tính địa phương (cục bộ), không có hiệu lực ở bên ngoài hàm.


2. Phạm vi của biến khai báo ngoài hàm
- Biến đã khai báo bên ngoài hàm chỉ có thể truy cập giá trị để sử dụng bên trong hàm mà không làm thay đổi được giá trị của biến đó (trừ trường hợp với từ khóa global).
Ví dụ 1: Biến khai báo bên ngoài hàm không có tác dụng bên trong hàm.

Ví dụ 2: Bên trong hàm có thể truy cập đến sử dụng giá trị của biến đã khai báo trước đó ở bên ngoài hàm.

- Ví dụ 3: Dùng từ khóa global.

Thực hành: Phạm vi của biến
Nhiệm vụ 1: Viết hàm với đầu vào là danh sách A chứa các số và số thực x. Hàm trả lại một danh sách kết quả B từ danh sách A bằng cách chỉ giữ lại các phần tử lớn hơn hoặc bằng x.
Hướng dẫn
Biến B kiểu danh sách cần được định nghĩa trong hàm và được bổ sung thêm các phần tử từ A nếu thỏa mãn điều kiện lớn hơn hoặc bằng x.

Nhiệm vụ 2: Viết hàm với đầu vào là xâu kí tự Str và số c, đầu ra là danh sách các từ được tách ra từ xâu Str nhưng đã được chuyển thành chữ in hoa hoặc chữ in thường hoặc chỉ chuyển đổi kí tự đầu các từ thành chữ in hoa tùy thuộc vào tham số đầu vào c như sau:
- Nếu c = 0, danh sách B là các từ được chuyển thành chữ in hoa.
- Nếu c = 1, danh sách B là các từ được chuyển thành chữ in thường.
- Nếu c = 2, danh sách B là các từ được chuyển viết chữ hoa kí tự đầu của mỗi từ.
Hướng dẫn
Cần sử dụng các lệnh:
Str.upper() – chuyển kí tự của xâu thành chữ in hoa.
Str.lower() - chuyển kí tự của xâu thành chữ in thường.
Str.title() – chuyển kí tự đầu mỗi từ của xâu thành chữ in hoa, các kí tự khác chuyển về chữ thường.
Hàm được định nghĩa có dạng Tach_tu(Str,c). Đầu tiên xâu Str cần được tách từ bằng lệnh split(). Sau đó danh sách kết quả sẽ được chuyển đổi chữ in hoa, in thường sử dụng một trong các lệnh trên tùy thuộc vào giá trị của đối số c.
Chương trình:

Nhiệm vụ 3: Viết một chương trình yêu cầu lần lượt các việc sau, mỗi việc thực hiện bởi một hàm.
1. Nhập từ bàn phím một dãy các số nguyên, mỗi số cách nhau bởi dấu cách. Chuyển các số này vào danh sách A và in danh sách A ra màn hình.
2. Trích từ danh sách A ra một danh sách B gồm các phần tử lớn hơn 0. In danh sách B ra màn hình.
3. Trích từ danh sách A ra một danh sách C gồm các phần tử nhỏ hơn 0. In danh sách C ra màn hình.
Hướng dẫn
Mỗi chức năng viết thành một hàm. Toàn bộ chương trình có thể như sau:

Trắc nghiệm Tin học 10 Bài 28: Phạm vi của biến
Câu 1. Hoàn thiện (…) trong phát biểu sau:
“Trong Python tất cả các biến khai báo bên trong hàm đều có tính …, không có hiệu lực ở bên … hàm”.
A. địa phương, trong.
B. cục bộ, ngoài.
C. địa phương, ngoài.
D. toàn cục, ngoài.
Đáp án đúng là: B
Trong Python tất cả các biến khai báo bên trong hàm đều có tính địa phương (cục bộ), không có hiệu lực ở bên ngoài hàm.
Câu 2. Số phát biểu đúng trong các phát biểu sau là:
1) Tất cả các biến bên trong hàm đều có tính cục bộ.
2) Tất cả các biến bên trong hàm chỉ có tính cục bộ.
3) Biến cục bộ trong hàm nếu gọi bên ngoài hàm sẽ bị lỗi.
A. 1.
B. 2.
C. 3.
D. 0.
Đáp án đúng là: B
Phát biểu đúng: 1, 3.
Câu 3. Chọn phát biểu sai trong các phát biểu sau:
A. Chương trình chính có thể sử dụng biến cục bộ bên trong hàm.
B. Biến bên trong hàm có thể trùng tên với biến đã khai bao trước đó bên ngoài hàm.
C. Tất cả các biến trong hàm đều có tính cục bộ.
D. Các biến bên trong hàm không có hiệu lực ở bên ngoài hàm.
Đáp án đúng là: A
Chương trình chính không thể sử dụng biến cục bộ bên trong hàm.
Câu 4. Giá trị của x, y là bao nhiêu khi thực hiện lệnh f(1, 3)
>>> x, y = 3, 4
>>> def f(x, y):
x = x + y
y = y + 2
return x
A. 2, 3.
B. 4, 5.
C. 5, 4.
D. 3, 4.
Đáp án đúng là: D
Giá trị của biến x, y không thay đổi.
Câu 5. Giá trị của a, b là bao nhiêu khi thực hiện lệnh f(2, 5)
>>> a, b = 0, 1
>>> def f(a, b):
a = a * b
b = b // 2
return a + b
A. 10, 2.
B. 10, 1.
C. 2, 5.
D. 0, 1.
Đáp án đúng là: D
Giá trị của biến a, b không thay đổi.
Câu 6. Kết quả của chương trình này là bao nhiêu?
s = "Tôi tên là: "
def kq(name):
s = s+ name
print(kq("Long"))
A. “Tôi tên là: Long”.
B. “Long”.
C. “Tôi tên là: ”.
D. Chương trình bị lỗi.
Đáp án đúng là: D
Chương trình bị lỗi do vi phạm phạm vi sử dụng biến
Câu 7. Kết quả của chương trình sau là bao nhiêu?
s = "Hôm nay tôi đi học "
def kq(name):
s = "Hello World"
s = s + “!!!”
return s
print(s)
A. "Hôm nay tôi đi học ".
B. "Hello World".
C. "Hello World!!!".
D. Chương trình bị lỗi.
Đáp án đúng là: A
Giá trị của chuỗi s bên ngoài hàm không bị thay đổi.
Câu 8. Kết quả của chương trình sau là bao nhiêu?
def kq(name):
s = "Tôi tên là: "
s = s+ name
return s
print(kq("Xuân"))
A. "Tôi tên là: ".
B. "Xuân".
C. "Tôi tên là: Xuân".
D. Chương trình bị lỗi
Đáp án đúng là: C
Hàm thực hiện nối hai chuỗi và trả về chuỗi s mới.
Câu 9. Kết quả của chương trình sau là bao nhiêu?
>>>def f(a,b):
return a + b + N
>>> N = 5
>>>f(3, 3)
A. 5.
B. 6.
C. 11.
D. Chương trình bị lỗi.
Đáp án đúng là: C
Hàm tính tổng của 3 số a, b, và N thu được kết quả là 11.
Câu 10. Nếu muốn biến bên ngoài vẫn có tác dụng bên trong hàm thì cần khai báo lại biến này bên trong hàm với từ khoá nào
A. global.
B. def.
C. Không thể thực hiện
D. all.
Đáp án đúng là: A
Từ khoá global giúp biến bên ngoài vẫn có tác dụng bên trong hàm.
Câu 11. Kết quả nào được in ra khi thực hiện các câu lệnh sau:
>>>def f(x, y):
a = x + y
print(a + n)
>>>n = 5
>>>f(2, 3)
A. 5.
B. 10.
C. 2.
D. Chương trình bị lỗi.
Đáp án đúng là: B
Tính tổng ba số x, y, n là 2 + 3 + 5 = 10.
Câu 12. Kết quả của chương trình sau là:
def add(x,y):
print(x+y)
x=15
add(x ,10)
add(x,x)
y=20
add(x,y)
A. 25, 35, 30.
B. 35, 30, 25.
C. 25, 30, 35.
D. Chương trình bị lỗi.
Đáp án đúng là: C
Hàm add(x, y) được thực hiện 3 lần :
15 + 10 = 25
15 + 15 = 30
20 + 15 = 35
Câu 13. Cho biết kết quả của chương trình sau:
def changeme(mylist):
mylist.append([1,2,3,4])
mylist = [10,20,30]
changeme( mylist)
print(mylist)
A. [10, 20, 30].
B. [10, 20, 30, 1, 2, 3, 4].
C. [1, 2, 3, 4].
D. [10, 20, 30, [1, 2, 3, 4]].
Đáp án đúng là: D
Danh sách [1, 2, 3, 4] được nối vào mylist ban đầu.
Câu 14. Chương trình sau bị lỗi ở dòng lệnh thứ bao nhiêu?
def msg():
a=10
print("Gia tri cua a la",a)
return msg()
print a
A. 4.
B. 5.
C. 3.
D. Không có lỗi.
Đáp án đúng là: B
Biến a ở trong hàm nên không thể được sử dụng bên ngoài hàm
Câu 15. Chương trình sau bị lỗi ở dòng lệnh thứ:
b=20
def msg():
a=10
print ("Gia tri cua a la",a)
print ("Gia tri cua b la",b)
return msg()
print(b)
A. 3.
B. 4.
C. 5.
D. Không có lỗi.
Đáp án đúng là: D
Chương trình không có lỗi do biến b được khai báo bên ngoài hàm.
Xem thêm tóm tắt lý thuyết Tin học 10 sách Kết nối tri thức hay, chi tiết khác:
Lý thuyết Bài 29: Nhận biết lỗi chương trình
Lý thuyết Bài 30: Kiểm thử và gỡ lỗi chương trình
Lý thuyết Bài 31: Thực hành viết chương trình đơn giản
Lý thuyết Bài 32: Ôn tập lập trình Python
Lý thuyết Bài 33: Nghề thiết kế đồ họa máy tính
Xem thêm tài liệu Tin học lớp 10:
Trắc nghiệm Phạm vi của biến lớp 10
Giải Tin học 10 Bài 28: Phạm vi của biến
Giải SBT Tin học 10 Bài 28: Phạm vi của biến
Giáo án Phạm vi của biến lớp 10
Xem thêm các chương trình khác:
- Soạn văn lớp 10 (hay nhất) – Kết nối tri thức
- Tác giả tác phẩm Ngữ văn lớp 10 – Kết nối tri thức
- Soạn văn lớp 10 (ngắn nhất) – Kết nối tri thức
- Tóm tắt tác phẩm Ngữ văn lớp 10 - KNTT
- Bố cục tác phẩm Ngữ văn lớp 10 – Kết nối tri thức
- Nội dung chính tác phẩm Ngữ văn lớp 10 – Kết nối tri thức
- Văn mẫu lớp 10 – Kết nối tri thức
- Giải Chuyên đề học tập Ngữ văn 10 – Kết nối tri thức
- 100+ đề Đọc hiểu Ngữ Văn 10 (có đáp án)
- Giải sgk Toán 10 – Kết nối tri thức
- Giải sbt Toán 10 – Kết nối tri thức
- Giải Chuyên đề Toán 10 – Kết nối tri thức
- Lý thuyết Toán 10 – Kết nối tri thức
- Chuyên đề dạy thêm Toán 10 Kết nối tri thức (2026 có đáp án)
- Giải sgk Tiếng Anh 10 Global Success – Kết nối tri thức
- Giải sbt Tiếng Anh 10 Global Success – Kết nối tri thức
- Ngữ pháp Tiếng Anh 10 Global success
- Bài tập Tiếng Anh 10 Global success theo Unit có đáp án
- Trọn bộ Từ vựng Tiếng Anh 10 Global success đầy đủ nhất
- Giải sgk Vật lí 10 – Kết nối tri thức
- Giải sbt Vật lí 10 – Kết nối tri thức
- Giải Chuyên đề Vật lí 10 – Kết nối tri thức
- Lý thuyết Vật lí 10 – Kết nối tri thức
- Chuyên đề dạy thêm Vật lí 10 cả 3 sách (2026 có đáp án)
- Giải sgk Hóa học 10 – Kết nối tri thức
- Lý thuyết Hóa học 10 – Kết nối tri thức
- Giải sbt Hóa học 10 – Kết nối tri thức
- Giải Chuyên đề Hóa học 10 – Kết nối tri thức
- Chuyên đề dạy thêm Hóa 10 cả 3 sách (2026 có đáp án)
- Giải sgk Sinh học 10 – Kết nối tri thức
- Giải sbt Sinh học 10 – Kết nối tri thức
- Lý thuyết Sinh học 10 – Kết nối tri thức
- Giải Chuyên đề Sinh học 10 – Kết nối tri thức
- Giải sgk Lịch sử 10 – Kết nối tri thức
- Giải sbt Lịch sử 10 – Kết nối tri thức
- Giải Chuyên đề Lịch sử 10 – Kết nối tri thức
- Lý thuyết Lịch sử 10 - Kết nối tri thức
- Giải sgk Địa lí 10 – Kết nối tri thức
- Lý thuyết Địa Lí 10 – Kết nối tri thức
- Giải sbt Địa lí 10 – Kết nối tri thức
- Giải Chuyên đề Địa lí 10 – Kết nối tri thức
- Giải sgk Công nghệ 10 – Kết nối tri thức
- Lý thuyết Công nghệ 10 – Kết nối tri thức
- Giải sgk Giáo dục Kinh tế và Pháp luật 10 – Kết nối tri thức
- Giải sbt Giáo dục Kinh tế và Pháp luật 10 – Kết nối tri thức
- Giải Chuyên đề Kinh tế và pháp luật 10 – Kết nối tri thức
- Lý thuyết KTPL 10 – Kết nối tri thức
- Giải sgk Giáo dục quốc phòng - an ninh 10 – Kết nối tri thức
- Lý thuyết Giáo dục quốc phòng 10 – Kết nối tri thức
- Giải sbt Giáo dục quốc phòng 10 – Kết nối tri thức
- Giải sgk Hoạt động trải nghiệm 10 – Kết nối tri thức
- Giải sbt Hoạt động trải nghiệm 10 – Kết nối tri thức
- Giải sgk Giáo dục thể chất 10 – Kết nối tri thức
