Trong Python từ khóa để thêm thư viện vào chương trình là

– Chương trình con trong Python gồm các package, module và các hàm được xây dựng sẵn hoặc do người lập trình tự xây dựng.

– Package là thư mục chứa một hoặc nhiều module hay các package khác nhau

– Module là tập hợp gồm các hàm liên quan như: math, random, pygame,…

– Chương trình con thường gồm 2 loại là hàm và thủ tục, nhưng trong Python không phân biệt hàm và thủ tục, mà chỉ dùng khái niệm hàm. Hàm chỉ được thực hiện khi được gọi

2. Cấu trúc hàm trong Python

a. Khai báo hàm:

def  [[]]:
	
	[return ]

b. Hàm ẩn danh:

 = lambda : 

c. Ví dụ: Viết hàm tính tổng 3 số bất kỳ

Cách 1: Khai báo hàm tong3

def  tong3[a, b, c]:
	t = a + b + c
	return t

Cách 2: Sử dụng hàm ẩn danh

tong3 = lambda a, b, c: a + b + c 

Lưu ý:

Danh sách tham số có thể được khởi tạo giá trị mặc định

Ví dụ:

def  tong3[a=0,b=0,c=0]
        return a + b + c

Lúc đó nếu không truyền tham số cho a, b, c thì a, b, c sẽ có giá trị mặc định là 0.

3. Thực hiện chương trình con

a. Đối với hàm: [[]]

Ví dụ:

tong = tong3[a, b, c]	#Gán giá trị trả về của hàm tong3 cho biến tong
tong = tong3[]		#Lúc đó biến tong sẽ có giá trị là 0, vì a, b, c sẽ nhận mặc định 0
n = math.abs[x] 	#Gán giá trị tuyệt đối của x cho biến n

b. Đối với Module

 import hoặc from import

Ví dụ:

import math		#Thêm thư viện Toán học
from math import sqrt	#Thêm hàm sqrt trong thư viện Toán học
from random import *	#Thêm toàn bộ hàm trong thư viện random

c. Đối với Package

 import .

Ví dụ:

#1
import demopackage.modules  #Thêm modules từ demopackage
demopackage.modules.say_hello[]  #Gọi hàm sayhello[] trong modules

#2
import demopackage.modules as modules  #Thêm modules từ demopackage
modules.say_hello[]  #Gọi hàm sayhello[] trong modules

4. Một số ví dụ về chương trình con

Ví dụ 1: Viết chương trình có sử dụng hàm lambda để trả về số giây tương ứng với các tham số giờ, phút, giây tương ứng nhập vào từ bàn phím.

Ví dụ 2: Viết chương trình tính tổng sau: S = 1! + 2! + … + n!, với n là số nguyên dương nhập vào từ bàn phím.

Ví dụ 3: Viết chương trình để in ra màn hình các số nguyên tố từ 1 đến n, với n là số nguyên dương nhập vào từ bàn phím.

Ví dụ 4: Viết chương trình giải bài toán Tháp Hà Nội

Bài toán Tháp Hà Nội [Tower of Hanoi] là một trò chơi toán học bao gồm 3 cột và với số đĩa nhiều hơn 1. Các đĩa có kích cỡ khác nhau và xếp theo tự tự tăng dần về kích cỡ từ trên xuống: đĩa nhỏ hơn ở trên đĩa lớn hơn. Nhiệm vụ của trò chơi là di chuyển các đĩa có kích cỡ khác nhau sang cột khác sao cho vẫn đảm bảo thứ tự ban đầu của các đĩa: đĩa nhỏ nằm trên đĩa lớn.

Trong Python, từ khóa Global cho phép bạn sửa đổi biến bên ngoài phạm vi hiện tại. Từ khóa toàn cầu là từ khóa cho phép người dùng sửa đổi một biến bên ngoài phạm vi hiện tại. Nó được sử dụng để tạo các biến toàn cục từ một phạm vi không toàn cục tức là bên trong một hàm. Từ khóa toàn cục chỉ được sử dụng bên trong một hàm khi chúng ta muốn thực hiện các phép gán hoặc khi chúng ta muốn thay đổi một biến. Từ khóa Global không cần thiết để in và truy cập.

Có thể sử dụng từ khóa Global để thay đổi các biến

Quy tắc của từ khóa Global trong Python

- Nếu một biến được gán giá trị ở bất kỳ đâu trong phần thân của hàm, nó được giả định là local trừ khi nó được khai báo rõ ràng là biến global.

- Các biến chỉ được tham chiếu bên trong một hàm hoàn toàn là toàn cục

- Bạn có thể sử dụng từ khóa global để sử dụng một biến toàn cục bên trong một hàmKhông cần sử dụng từ khóa toàn cục bên ngoài một hàm.

>>> Đọc thêm: Đệ quy trong Python - Vỹ khí bậc nhất của lập trình viên Python

Sử dụng từ khóa Global trong Python

Để truy cập một biến toàn cục bên trong một hàm, bạn không cần sử dụng từ khóa toàn cục.

Ví dụ 1:

# Python program showing no need to 

# use global keyword for accessing 

# a global value 

# global variable 

a = 15

b = 10

# function to perform addition 

def add[]: 

c = a + b 

print[c] 

# calling a function 

add[] 

Output:

25

Nếu bạn cần gán một giá trị mới cho một biến toàn cục thì chúng ta có thể làm điều đó bằng cách khai báo biến là toàn cục.

>>> Tham khảo: Khóa học lập trình Python

Ví dụ 2: Code không có khóa Global

# Python program showing to modify 

# a global value without using global 

# keyword 

a = 15

# function to change a global value 

def change[]: 

# increment value of a by 5 

a = a + 5

print[a] 

change[] 

Output

UnboundLocalError: local variable 'a' referenced before assignment

Lỗi này xảy ra khi chúng ta cố gắng gán giá trị cho một biến trong phạm vi bên ngoài. Điều này có thể được thực hiện bằng cách sử dụng biến toàn cục.

Ví dụ 3: Với từ khóa Global

 # Python program to modify a global 

# value inside a function 

x = 15

def change[]: 

# using a global keyword 

global x 

# increment value of a by 5 

x = x + 5

print["Value of x inside a function :", x] 

change[] 

print["Value of x outside a function :", x] 

Kết quả:

Value of x inside a function : 20

Value of x outside a function : 20

Trong ví dụ trên, đầu tiên chúng ta định nghĩa x là từ khóa toàn cục bên trong hàm change[]. Giá trị của x sau đó được tăng thêm 5, tức là. x = x + 5 và do đó chúng ta nhận được đầu ra là 20.

Như chúng ta có thể thấy bằng cách thay đổi giá trị bên trong hàm change[], sự thay đổi cũng được phản ánh trong giá trị bên ngoài biến toàn cục.

Các biến toàn cục trên các mô-đun python:

Cách tốt nhất để chia sẻ các biến toàn cục trên các mô-đun khác nhau trong cùng một chương trình là tạo một mô-đun đặc biệt [thường được đặt tên là config hoặc cfg]. Nhập mô-đun cấu hình trong tất cả các mô-đun của ứng dụng của bạn; mô-đun sau đó sẽ có sẵn dưới dạng tên chung. Chỉ có một phiên bản của mỗi mô-đun và vì vậy bất kỳ thay đổi nào được thực hiện đối với đối tượng mô-đun sẽ được phản ánh ở mọi nơi. Ví dụ: chia sẻ các biến toàn cục trên các mô-đun

Mã 1:Tạo một  tệp config.py để lưu trữ các biến toàn cục:

filter_none

độ sáng_4

x = 0

y = 0

z ="none"

Mã 2: Tạo tệp modify.by để sửa đổi các biến toàn cục:

filter_none

import config

config.x = 1

config.y = 2

config.z ="geeksforgeeks"

Ở đây chúng tôi đã sửa đổi giá trị của x, y và z. Các biến này đã được xác định trong mô-đun config.py, do đó phải nhập mô-đun config  và chúng tôi có thể sử dụng config.variable_name để truy cập các biến này.

Mã 3: Tạo main.py tệp để sửa đổi các biến toàn cục:

filter_none

độ sáng_4

import config

import modify

print[config.x]

print[config.y]

print[config.z]

Đầu ra:

geeksforgeeks

Từ khóa Global trong hàm lồng nhau

Để sử dụng từ khóa Global bên trong một hàm lồng nhau, bạn phải khai báo một biến với từ khóa toàn cục bên trong một hàm lồng nhau. 

# Python program showing a use of

# global in nested function

def add[]:

     x = 15

     def change[]:

         global x

         x = 20

     print["Before making changing: ", x]

     print["Making change"]

     change[]

     print["After making change: ", x]

add[]

print["value of x",x]

Output:

Before making changing:  15

Making change

After making change:  15

value of x 20

Trong ví dụ trên trước và sau khi thực hiện change [], biến x nhận giá trị của biến cục bộ tức là x = 15. Bên ngoài add[] hàm, biến x sẽ nhận giá trị được xác định trong change[]hàm tức là x = 20. bởi vì chúng ta đã sử dụng từ khóa global trong x để tạo biến toàn cầu trong việc thay đổi [] chức năng [phạm vi địa phương].

Kết luận: Trên đây là khái niệm và các ví dụ về từ khóa Global trong Python. Hy vọng các kiến thức trên hữu ích cho bạn trong quá trình lập trình với Python. Tìm hiểu về Python và các ngôn ngữ lập trình khác, tham khảo các khóa học lập trình tại T3H.

Chủ Đề