Tổng Hợp Các Hàm Python “Cốt Lõi” Khi Thi HSG Tỉnh Và Vào 10 Chuyên Tin ( Mới Nhất – Chọn Lọc – Cập Nhật Thường Xuyên )
Cập nhật mới nhất ngày 11/4 /2026
Trong các kỳ thi học sinh giỏi Tin học cấp huyện – cấp tỉnh và thi tuyển sinh vào lớp 10 chuyên Tin, Python là ngôn ngữ được sử dụng rất phổ biến. Tuy nhiên, đề thi không yêu cầu viết code dài, mà yêu cầu:
Nắm chắc hàm chuẩn
Biết áp dụng nhanh đúng chỗ
Tối ưu tư duy + thời gian làm bài
Tải về ngay tài liệu Tổng Hợp Hàm Python Thi Tỉnh Và Thi Vào Lớp 10 Chuyên Tin
Bài viết này tổng hợp đầy đủ các hàm Python “xương sống” thường xuất hiện trong đề thi tỉnh và đề thi chuyên, được chia theo nhóm bài toán, kèm ví dụ sát đề thật.
Tác giả: [Thầy Tấn Dân]
Chuyên mục: Lập trình thi đấu Python cấp Tỉnh, Ôn thi Chuyên Tin.
Trong những năm gần đây, Python đã trở thành ngôn ngữ được cho phép và ưa chuộng trong các kỳ thi Học sinh giỏi (HSG) cấp Tỉnh và thi vào lớp 10 Chuyên Tin nhờ cú pháp ngắn gọn. Tuy nhiên, tốc độ thực thi của Python chậm hơn C++. Để bù đắp điều này, việc nắm vững các hàm có sẵn (built-in functions) và các thư viện chuẩn là chìa khóa để code nhanh hơn và tối ưu thời gian chạy (Time Limit).
Bài viết này sẽ tổng hợp “kho vũ khí” các hàm Python quan trọng nhất giúp bạn chinh phục các bài toán xử lý chuỗi, số học và cấu trúc dữ liệu.
1. Tăng Tốc Nhập/Xuất Dữ Liệu (Fast I/O)
Trong các bài thi, dữ liệu đầu vào có thể lên tới $10^5$ hoặc $10^6$ dòng. Hàm input() thông thường có thể khiến bạn bị lỗi TLE (Time Limit Exceeded).
Hãy sử dụng sys.stdin:
Python
import sys
# Thay thế input() bằng sys.stdin.readlineinput = sys.stdin.readline
# Đọc mảng số nguyên trên một dòng
a = list(map(int, input().split()))
Lưu ý: Khi dùng sys.stdin.readline, chuỗi nhận được sẽ kèm theo ký tự xuống dòng \n. Bạn có thể cần dùng .strip() để loại bỏ nó.
2. Các Hàm Xử Lý Chuỗi (String Manipulation)
Đề thi cấp Tỉnh và vào 10 thường xuyên có bài tập xử lý xâu. Python là “vua” ở mảng này.
Cắt và Gộp Chuỗi
s.split(): Tách chuỗi thành list (mặc định tách theo khoảng trắng).
" ".join(list): Gộp list thành chuỗi.
Tìm Kiếm và Thay Thế
s.find(sub): Trả về chỉ số đầu tiên tìm thấy, nếu không có trả về -1.
s.count(sub): Đếm số lần xuất hiện của chuỗi con.
s.replace(old, new): Thay thế chuỗi con.
Kỹ Thuật Slicing (Cắt lát)
Đây là kỹ thuật cực mạnh của Python:
s[::-1]: Đảo ngược chuỗi (Cực hay dùng để kiểm tra số Palindrome).
s[start:end:step]: Cắt chuỗi linh hoạt.
3. Thư Viện Toán Học (math)
Đừng tự viết hàm tính toán nếu Python đã có sẵn, vì hàm của thư viện C-based chạy nhanh hơn nhiều.
Python
import math
math.gcd(a, b): Tìm ước chung lớn nhất (UCLN).
math.lcm(a, b): Tìm bội chung nhỏ nhất (BCNN) (Lưu ý: Chỉ có từ Python 3.9 trở lên).
math.isqrt(n): Tính căn bậc 2 nguyên (trả về phần nguyên), nhanh và chính xác hơn int(math.sqrt(n)) với số lớn.
math.ceil(x) / math.floor(x): Làm tròn lên / xuống.
math.factorial(n): Tính giai thừa $n!$.
4. Xử Lý Danh Sách (List) & Sắp Xếp
Sắp xếp (Sorting) là bài toán kinh điển. Python sử dụng thuật toán Timsort với độ phức tạp $O(N \log N)$.
Hàm Sắp Xếp
a.sort(): Sắp xếp trực tiếp trên list a (làm thay đổi a).
sorted(a): Trả về một list mới đã sắp xếp, giữ nguyên a.
Thay vì dùng vòng lặp for, hãy dùng cách này để code ngắn gọn:
Python
# Tạo mảng bình phương các số chẵn từ 0 đến 9
sq = [x**2for x inrange(10) if x % 2 == 0]
5. “Vũ Khí Bí Mật”: Thư Viện collections và itertools
Đây là phần phân loại thí sinh. Biết dùng các thư viện này sẽ giúp bạn giải quyết bài toán phức tạp trong vài dòng code.
collections.Counter (Đếm tần suất)
Giải quyết bài toán “đếm số lần xuất hiện của phần tử” trong $O(N)$.
Python
from collections import Counter
a = [1, 2, 2, 3, 1, 1]
dem = Counter(a)
print(dem[1]) # Kết quả: 3 (số 1 xuất hiện 3 lần)
print(dem.most_common(1)) # Trả về phần tử xuất hiện nhiều nhất
collections.deque (Hàng đợi hai đầu)
Dùng cho thuật toán BFS hoặc các bài toán cần thêm/xóa phần tử ở đầu mảng (List thường xóa đầu mất $O(N)$, deque chỉ mất $O(1)$).
itertools.permutations & combinations
Dùng để sinh hoán vị và tổ hợp (thay thế cho quay lui – backtracking ở các bài toán có N nhỏ).
Python
from itertools import permutations
# Sinh tất cả hoán vị của [1, 2, 3]
perms = list(permutations([1, 2, 3]))
6. Mẹo Nhỏ Nhưng “Có Võ”
Nới rộng giới hạn đệ quy: Python mặc định giới hạn độ sâu đệ quy khoảng 1000. Với các bài DFS hoặc quy hoạch động đệ quy, hãy thêm dòng này đầu file:
Python
import sys
sys.setrecursionlimit(10**6)
Sử dụng hàm set(): Để loại bỏ phần tử trùng lặp hoặc kiểm tra sự tồn tại trong $O(1)$ thay vì $O(N)$ của list.
Hàm zip(): Duyệt song song nhiều list cùng lúc.
I. Các hàm đặc biệt quan trọng – Hay ra nhất trong đề thi
1) các hàm chữ:
s=s.split() #tách các chữ mất khoản cách
s=s.split(‘,’) # tách các phần tử bởi dấu phẩy (, ) (.) (: ) tùy bài
isdigit() # các số
islower() ( chữ thường )
isupper() (chữ hoa )
sorted() ( Các từ theo thứ tự từ điển)
print(s1.count(s2)) ( điếm trong chuỗi )
s[i].isalnum() lấy kiểu chữ và số ( trừ ký tự đặc biệt )
not s[i].isalnum() lấy ký tự đặc biệt
s=’’.join(a)# chuyển mảng sang chuỗi
a=list(s) # chuyển chuỗi sang mảng
vt=c.index(Max)
vt=s.rfind(‘.’)# tìm vị trí dấu chấm cuối
vt=s.find(‘.’)# tìm vị trí đầu trong chuỗi
abs( a- b) ( hàm trị tuyệt đối)
sqrt ( a) căn bật 2 nhớ import math
BCNN=abs(a*b)/ucln(a,b) # Bội số chung lớn nhất
Ucln=math.gcd(a,b) #Ước số chung lớn nhất
print(s[0].zfill(2),’:’,s[1].zfill(2),’:’,s[2].zfill(2),sep=”)# định dạng thêm số 0 ở phía trước zfill(2) ; số 2 phần chục; 3; phần trăm; 4; phần ngàn,…
7. Kỹ Thuật Lọc Dữ Liệu Bằng “Biểu Thức Chính Quy” (Regex)
Trong đề thi, đôi khi dữ liệu vào là một xâu hỗn độn chứa cả chữ và số (ví dụ: a12b34cd56), và yêu cầu bạn tách riêng số hoặc chữ. Thay vì dùng vòng lặp for để kiểm tra từng ký tự, ta dùng thư viện re (Regular Expression).
Lấy từng số, bỏ chữ (Hoặc ngược lại)
Để sử dụng, bắt buộc phải import re.
Python
import re
s = "hoc123sinh456gioi789"# 1. Lấy số, bỏ chữ:# '[^0-9]+' nghĩa là: Những ký tự KHÔNG phải số (0-9)# Thay thế những cái không phải số bằng khoảng trắng ' ', sau đó split ra.
nums = re.sub('[^0-9]+', ' ', s).split()
# Kết quả nums: ['123', '456', '789'] (Dạng chuỗi)# 2. Lấy chữ, bỏ số:# '[^a-zA-Z]+' nghĩa là: Những ký tự KHÔNG phải chữ cái (a-z, A-Z)
words = re.sub('[^a-zA-Z]+', ' ', s).split()
# Kết quả words: ['hoc', 'sinh', 'gioi']
Tại sao nó “xịn”? Cách này xử lý được cả trường hợp số âm hoặc số thực nếu bạn chỉnh pattern một chút, và nó nhanh hơn nhiều so với việc viết hàm if kiểm tra từng ký tự.
8. Sửa Đổi và Làm Sạch Chuỗi (replace & strip)
Nhóm hàm này dùng để chuẩn hóa dữ liệu đầu vào (ví dụ: xoá khoảng trắng thừa, thay thế từ khóa).
Hàm thay thế (replace)
Dùng để thay thế tất cả các chuỗi con tìm thấy.
Python
s = " hello world "# Xóa toàn bộ khoảng trắng trong chuỗi# Kết quả: "helloworld"
clean_s = s.replace(" ", "")
# Thay thế từ
s2 = "python is hard"
s2 = s2.replace("hard", "easy")
# Kết quả: "python is easy"
Hàm cắt khoảng trắng (strip)
Rất quan trọng khi đọc dữ liệu từ input() để tránh lỗi do khoảng trắng thừa ở đầu/cuối dòng.
s.strip(): Cắt khoảng trắng 2 đầu.
s.lstrip(): Cắt bên trái (đầu dòng).
s.rstrip(): Cắt bên phải (cuối dòng).
9. Các Kỹ Thuật Sắp Xếp và Đảo Ngược
Cần phân biệt rõ giữa Sắp xếp (Sort) và Đảo ngược (Reverse).
Sắp xếp (Sort)
Đưa các phần tử về trật tự tăng dần hoặc giảm dần.
Python
a = [3, 1, 5, 2]
# Cách 1: a.sort()# Sắp xếp trực tiếp lên biến a. Không trả về dữ liệu mới.
a.sort()
print(a) # [1, 2, 3, 5]# Cách 2: sorted(a)# Trả về một list MỚI, list a cũ giữ nguyên.
b = sorted(a, reverse=True) # Sắp xếp giảm dần
print(b) # [5, 3, 2, 1]
Đảo ngược (Reverse – Slicing)
Đây không phải là sắp xếp lại giá trị, mà chỉ là lật ngược vị trí (đuôi lên đầu).
Python
s = "ABCDE"
rev_s = s[::-1]
# Kết quả: "EDCBA"
Kiểm tra đối xứng (Palindrome)
Sử dụng kỹ thuật slicing [::-1] để kiểm tra cực nhanh.
Python
defktdx(n):# Luôn chuyển về chuỗi trước khi đảo ngược
s = str(n)
return s == s[::-1]
print(ktdx(12321)) # True
print(ktdx(123)) # False
10. Tìm Giá Trị Lớn Nhất / Nhỏ Nhất (Min/Max Nâng Cao)
Ngoài việc tìm số lớn nhất/nhỏ nhất thông thường, Python cho phép tìm theo tiêu chí riêng bằng tham số key.
words = ["ha", "noi", "vietnam", "yeu"]
# Tìm chuỗi có độ dài (len) lớn nhất
longest = max(words, key=len)
print(longest) # "vietnam"# Tìm chuỗi có độ dài nhỏ nhất
shortest = min(words, key=len)
print(shortest) # "ha"
Giải thích:key=len bảo Python rằng: “Đừng so sánh chữ cái a,b,c… hãy so sánh độ dài của chúng để quyết định ai lớn nhất”.
Tổng kết nhanh các hàm cần nhớ:
Chức năng
Hàm/Cú pháp
Ghi chú
Lọc số
re.sub('[^0-9]+', ' ', s)
Cần import re
Thay thế
s.replace(old, new)
Thay thế tất cả
Cắt khoảng trắng
s.strip()
Chỉ cắt 2 đầu
Sắp xếp
a.sort() hoặc sorted(a)
sort sửa list gốc, sorted tạo list mới
Đảo ngược
s[::-1]
Dùng để kiểm tra Palindrome
Max theo dài
max(a, key=len)
Tìm chuỗi dài nhất
9) lấy điểm ra sắp xếp:
Def laydiem(s):
s=s.split()
return float(s[-1])
kq=sorted(a,key=laydiemm,reverse=True)
for i in range(len(kq)):
x=kq[i].split()
diem=float(x[-1])
x.pop(-1)
hoten=’’.join(x)
print(hoten,’%0.1f’%diem)
2 Khóa Học Tin Học Online Thầy Dân Luyện Thi Chuyên Tin Tin Văn Phòng Cấp Tốc
Thật là thiếu sót nếu các bạn không ” Tự học ngôn ngữ lập trình Python từ cơ bản đến nâng cao !” ngay bây giờ. Hiện tại kỹ thuật viên lập trình đang là nghề ” HOT NHẤT “ thường có mức lương khá cao từ trung bình có thể 20 triệu, thậm chí kỹ thuật lập trình giỏi xuất sắc lên tới hơn 100 triệu là chuyện bình thường! Vậy còn chờ gì nữa mà không học ngôn ngữ lập trình Python ” NGAY VÀ LUÔN NÀO ANH EM!”
Các đề ôn thi để chuẩn bị thi Cấp Huyện thì các em vào đường dẫn phía dưới để tham khảo giúp thầy nhé!
Top 10 ngôn ngữ lập trình có mức lương cao và sử dụng nhiều nhất thế giới?
Hiện tại Python là ngôn ngữ lập trình đời mới bởi vì ngôn ngữ lập trình Python dễ học hơn nhiều so với lập trình Pascal và lập trình C++
Cho nên ngôn ngữ lập trình Python đã và đang chiếm lĩnh mức lương cao hàng đầu thế giới.
Mặc dù Python là đứa con sinh sau đẻ muộn nhưng ngôn ngữ lập trình Python đang không ngừng phát triển đã và đang vực mặt các đàn anh ra đời trước đứng xếp thứ top 1 trên thế giới năm 2/2025 về sự lựa chọn.
Để nói lên Python đang là ngôn ngữ lập trình được các chuyên gia lựa chọn hàng đầu thế giới.
Mình sẽ cố gắng viết cho các bạn thật dễ hiểu nhất có thể nhé!
Vì đây là mình viết bằng ngôn ngữ bằng Tiếng Việt cho các bạn dễ hiểu.
Ngôn ngữ lập trình Python là gì?
Python là một ngôn ngữ lập trình bậc cao, thông dịch, và đa mục đích. Nó được tạo ra bởi Guido van Rossum và ra mắt lần đầu tiên vào năm 1991. Python nổi bật với cú pháp đơn giản, dễ đọc, dễ học, giúp lập trình viên tập trung vào giải quyết vấn đề dễ dàng hơn.
Đặc điểm chính của Python:
Dễ đọc, dễ viết: Cú pháp gần gũi với ngôn ngữ tự nhiên.
Đa nền tảng: Chạy được trên Windows, macOS, Linux,…
Hỗ trợ lập trình đa phong cách: Hướng đối tượng, lập trình hàm, lập trình thủ tục.
Thư viện phong phú: Có sẵn nhiều thư viện mạnh mẽ phục vụ cho khoa học dữ liệu, AI, web, tự động hóa,…
Cộng đồng lớn: Rất nhiều tài liệu, khóa học và diễn đàn hỗ trợ.
Python dùng để làm gì?
Phát triển trí tuệ nhân tạo (AI) & Học máy (Machine Learning)
Phân tích và xử lý dữ liệu lớn (Big Data)
Phát triển web (Django, Flask, FastAPI,…)
Tự động hóa tác vụ (quét dữ liệu, thao tác file, gửi email,…)
Viết ứng dụng di động (Kivy, BeeWare)
Phát triển trò chơi (Pygame)
Nếu bạn muốn học lập trình Python, đây là lộ trình phù hợp cho người mới bắt đầu:
Cài đặt phần mềm lậptrình Python bao gồm:
PyCharm EDU là phần mềm lập trình dễ sử dụng nhất mà ở Việt Nam mình đang sử dụng trong thi cấp huyện và cấp tỉnh các bạn có thể tải phần mềm ở phần bên dưới! Tải đường dẫn tốc độ cao Google Driver ! Các bạn nào không biết có thể liên hệ mình ngay qua số điện thoại 093.717.9278 ( gặp Tấn Dân cử nhân công nghệ thông tin)
Phiên bản dành cho Windows 10 và Windows 11:
Phiên bản dành cho Windows 7:
✅ Làm quen với cú pháp cơ bản (biến, kiểu dữ liệu, toán tử) ✅ Viết chương trình đơn giản (in dòng chữ, nhập dữ liệu từ bàn phím)
Kiểu str: Kiểu chuỗi, để trong nháy đôi hoặc nháy đơn
Ví dụ: “Tin học”, ‘ABc’
Kiểubool: Kiểu luận lý, để lưu True hoặc False
Ví dụ 1: t1=True
Ví dụ 2: t2=False
Bài 2: cách sửdụng biến trong python:
Trong Python một biến không cần khai báo kiểu dữ liệu,
khi ta gán giá trị thì tự động Python sẽ nội suy ra kiểu dữ liệu của biến. Như vậy một biến có thể có nhiều kiểu dữ liệu tùy thuộc vào giá trị mà ta gán.
Ví dụ như:
x=30
name = “Lê Tèo“
a = b = c = 1996
name, age, male = “Lê Tèo”, 22 , True
Các biến được cho dễ dàng như:
Ví dụ 1:
x=5
print(x+2)
Ví dụ 2:
x= ‘ Teo‘
print(‘ Lê‘+x)
Ví dụ 3:
x=True
print(x)
Ví dụ 4:
x=5.5
print(x+1)
Bài 3: cách nào để ghichúlệnhtrong Python?
Cách 1: Trong Python dùng dấu # để cho phép ta ghi chú 1 dòng:
Cách ghi chú trong python là dấu #
Cách 2: Để ghi chú nhiều dòng lệnh, ta dùng “”” “”” (3 cặp nháy đôi) hoặc ”’ ”'(3 cặp nháy đơn)
Cách ghi chú dòng lệnh trong python
Bài 4: cách nào để sử dụng toán tử thường dùng trong Python?
Trong ngôn ngữ lập trình python luôn sử dụng các toán tử ví dụ như: cộng, trừ, nhân, chia, chia lấy phần hết, chia lấy phần dư,… để nói lên tóm tắt cho dễ sử dụng trong quá trình lập trình
Toán tử số học cơ bản trong python:
các loại toán tử số học trong python
Ví dụ 1: Phép cộng (+)
Nhập số thứ nhất: 12
Nhập số thứ hai: 4.9
Kết quả: Tổng = 16.9
a = float(input("Nhập số thứ nhất: "))
b = float(input("Nhập số thứ hai: "))
tong = a + b
print("Tổng =", tong)
Ví dụ 2: Phép trừ (-)
a = 3.98
b = 4
Kết quả:
Hiệu = -0.02
a = float(input("Nhập a: "))
b = float(input("Nhập b: "))
hieu = a - b
print("Hiệu =", hieu)
Ví dụ 3: Phép trừ (-)
a = 2
b = 3.4
Kết quả:
Tích = 6.8
a = float(input("Nhập a: "))
b = float(input("Nhập b: "))
tich = a * b
print("Tích =", tich)
Ví dụ 4: Phép chia (/)
a = 9
b = 2
Kết quả:
Thương = 4.5
a = float(input("Nhập a: "))
b = float(input("Nhập b: "))
thuong = a / b
print("Thương =", thuong)
Ví dụ 5: Chia lấy phần nguyên (//)
9 // 2
Kết quả:
Phần nguyên = 4
a = int(input("Nhập a: "))
b = int(input("Nhập b: "))
print(a // b)
Ví dụ 6: Chia lấy phần dư (%)
9 % 2
Kết quả: 1
a = int(input("Nhập a: "))
b = int(input("Nhập b: "))
print(a % b)
Ví dụ 7: Lũy thừa (**)
3 ** 4
Kết quả: 81
a = int(input("Nhập cơ số: "))
b = int(input("Nhập số mũ: "))
print(a ** b)
a = float(input("Nhập số thứ nhất: "))
b = float(input("Nhập số thứ hai: "))
print("Cộng:", a + b)
print("Trừ :", a - b)
print("Nhân:", a * b)
print("Chia:", a / b)
Ví dụ 9: Tính diện tích hình chữ nhật
Dài = 8
Rộng = 5
Kết quả:
Diện tích = 40
dai = float(input("Chiều dài: "))
rong = float(input("Chiều rộng: "))
dien_tich = dai * rong
print("Diện tích =", dien_tich)
Ví dụ 10: Tính chu vi hình chữ nhật
Dài=8
Rộng=5
Kết quả:
Chu vi = 26
dai = float(input("Chiều dài: "))
rong = float(input("Chiều rộng: "))
chu_vi = (dai + rong) * 2
print("Chu vi =", chu_vi)
Ví dụ 11: Tính tuổi
Nhập năm sinh: 2008
Nhập năm hiện tại: 2026
Kết quả:
Bạn 18 tuổi
nam_sinh = int(input("Nhập năm sinh: "))
nam_hien_tai = int(input("Nhập năm hiện tại: "))
tuoi = nam_hien_tai - nam_sinh
print("Bạn", tuoi, "tuổi")
gia = int(input("Giá một sản phẩm: "))
so_luong = int(input("Số lượng: "))
gia *= so_luong
print("Thành tiền =", gia)
Ví dụ 12: Tăng diện tích
Diện tích = 50
Gấp 3 lần
Kết quả:
Diện tích mới = 150
dien_tich = int(input("Diện tích ban đầu: "))
dien_tich *= 3
print("Diện tích mới =", dien_tich)
Tài liệu học Python toán tử gán phần 2
diem = int(input("Điểm ban đầu: "))
tru = int(input("Điểm bị trừ: "))
diem -= tru
print("Điểm còn lại =", diem)
3. Toán tử trong so sánh của python:
Toán tử
Mô tả
Ví dụ
==
So sánh bằng
5 == 5 => kết quả True
!=
So sánh không bằng
5 != 5 => kết quả False
<
So sánh nhỏ hơn
5 < 5 => kết quả False
<=
So sánh nhỏ hơn hoặc bằng
5 <= 5 => kết quả True
>
So sánh lớn hơn
5 > 5.5 => kết quả False
>=
So sánh lớn hơn hoặc bằng
113>= 5 => kết quả True
is
Trả về true nếu các biến ở hai bên toán tử cùng trỏ tới một đối tượng(hoặc cùng giá trị), nếu không là false
x=5
y=5
print(x is y)
=>kết quả là True
is not
Trả về false nếu các biến ở hai bên toán tử cùng trỏ tới một đối tượng(hoặc cùng giá trị), nếu không là true
x=5
y=5
print(x is not y)
=>kết quả là False
4. Toán tử logic trong python:
Toán tử
Mô tả
Ví dụ
and
Toán tử Và: Nếu cả hai điều kiện là True thì kết quả sẽ là True
x=2016
print(x%4==0 and x%100!=0)
=>True
or
Toán tử Hoặc: Chỉ cần một điều kiện True thì nó True, tất cả điều kiện False thì nó False
x=2016
print((x%4==0 and x%100!=0) or x%400==0)
=>True
not
Toán tử Phủ định. Thông thường nó được dùng để đảo ngược trạng thái logic của toán hạng
x=4
if (not x>=5):
print(“Hỏng”)
else:
print(“Đậu”) ==> Hỏng
Bài 5: cách nhập dữ liệu từ bàn phím vào python như thế nào?
1) Hàm input() nhập và xuất ra print():
Trong Python để nhập liệu từ bàn phím ta dùng hàm input().
Giá trị nhập vào của hàm input() thường là kiểu chuỗi, do đó ta cần chuyển kiểu nếu như muốn lưu trữ giá trị nhập vào không phải kiểu chuỗi.
print(“Nhập họ tên:”)
s=input()
print(“Xin chào:”,s)
2) Hàm kiểu số nguyên int() và kiểu số thực float():
Muốn đưa về số int
print(“Nhập vào một số nguyên:”)
x=int(input())
print(“x+2:”,x+2)
2. Muốn đưa về số float
x=float(input(“Nhập vào một số thực:”))
print(“x+3:”,x+3)
3. Nhập 1 số nguyên
print(“Nhập vào một số nguyên:”)
x=int(input())
print(“x+2:”,x+2)
4. Nhập 2 số nguyên trên 1 dòng
print(“Nhập vào hai số nguyên trên 1 dòng:”)
x, y=map(int,input().split())
print(“x+2:”,x+2)
print(“y*2:”,y*2)
Bài 6: cách xuất dữ liệu ra màn hình trong python là sao?
Xuất ra nhiều nội dung cho nhiều biến:
Thông thường, hàm print(“Nội dung 1”, “nội dung 2”) sẽ in các chuỗi, biến bên trong cặp dấu ngoặc trên 1 dòng (giống như lệnh writeln trong pascal)
s=input(“Nhập họ tên:”)
print(“Xin chào:”,s)
Nếu ta muốn in ra màn hình như lệnh write trong pascal thì thêm tham số end=“” ở cuối.
Vd: print(“Xin chào:”, s, end=“”)
Lệnh print(‘a’*10) sẽ in 10 chữ a ra màn hình
2. Dùng lệnh sep=”” để xuất ra giá trị sát vô không khoảng cách:
Phân cách giữa các giá trị trong print()Vd:x,y,z=1,2,3print(x,y,z) # sau khi in ra có 1 khoảng cách là: 1 2 3x,y,z=1,2,3print(x,y,z, sep=“”) # sau khi in ra sát vô không có khoảng cách là: 123
3. Xuất ra có định dạng bao nhiêu số thập phân ( xuất ra số dư ):
Định dạng số thập phân
x=123.426
print(“%0.2f”%x) à 123.43 # nếu mình nhập số 2 thì ra 2 số dư
print(“%0.1f”%x) à 123.4 # nếu mình nhập số 1 thì ra 1 số dư
Bài 7: cách dùng câu lệnh if ( nếu ) trong python như thế nào?
if ( điều kiện đúng hoặc sai):
chạy tiếp điều kiện đúng theo yêu cầu của bài
Chú ý: nếu điều kiện đúng sẽ chạy thực thi lệnh câu trong if, còn nếu điều kiện sai sẽ không chạy
Ví dụ 1:
Web học Python tiếng Việt
dòng 1 nhập điểm trung bình kiểu số thực:
dòng 2 nếu điểm trung bình lớn hơn bằng 5
nếu điều kiện đúng thì in ra:
Bạn đã đậu!
Hú hồn!
nếu điều kiện sai ( ví dụ: dtb mình nhập là 3) sẽ không làm 2 câu lệnh bên dưới.
Ví dụ 2:
x = int(input(“Nhập một số: “))
if x> 0:
print(x, “là số dương.”)
print(“Cám ơn bạn đã sử dụng app!”)
Bài 8: dùng câu lệnh if else ( nếu thì ) trong python cách nào?
dtb=float(input(“Nhập điểm trung bình:”))
if dtb>=5:
print(“Bạn đã Đậu”)
print(“Hú hồn!”)
else:
print(“Chúc bạn may mắn lần sau”)
print(“Đi phụ hồ nhé!”)
print(“Hẹn gặp lại!”)
Giải thích: nếu ta nhập điểm trung bình >=5 thì in 2 câu lệnh “bạn đã đậu ” và ” Hú hồn!” còn ngược lại <5 thì in 3 câu lệnh bên dưới.
Bài 9: dùng câu lệnh if else lòng nhau trong python cách nào?
num = float(input(“Nhập một số: “))
if num >= 0:
if num == 0:
print(“Số Không”)
else:
print(“Số dương”)
else:
print(“Số âm”)
Giải thích: nhập một số vô, nếu số đó >=0 thì chạy câu lệnh đúng trong if là nếu số =0 thì in ra ” Số Không” còn ngược lại in ra ” Số dương”. Còn ngược lại nếu số <0 thì in ra “Số âm”.
Bài 10: cách dùng if – elif (nếu – ngược lại ) trong python làm thế nào?
dtb=float(input(“Nhập điểm trung bình:”))
if dtb>=8:
print(“Bạn đạt loại Giỏi”)
elif dtb>=6.5:
print(“Bạn đạt loại Khá”)
elif dtb>=5:
print(“Bạn đạt loại Trung bình”)
print(“Hú hồn!”)
else:
print(“Cố gắng ở lần sau nhé!”)
Giải thích: nhập điểm trung bình kiểu số thực, nếu điểm trung bình >=8 thì in ” Bạn đạt loại Giỏi”, nếu dtb>=6.5 thì in ra ““Bạn đạt loại Khá”, nếu dtb>=5 thì in ra “Bạn đạt loại Trung bình” và “Hú hồn!”, ngược lại tất cả các ý trên thì in ra “Cố gắng ở lần sau nhé!”
Bài 11: Câulệnhlặp for… range ra sao?
1) Câulệnhlặp for và cú pháp hàm range:
Hàm for sử dụng range để định nghĩa vùng dữ liệu lặp và bước lặp
Cú pháp hàm range(giá trị bắt đầu, giá trị kết thúc, bước chạy)
👉 Đây là bước chuyển từ việc chỉ in số sang xử lý số trong vòng lặp.
14. Đếm từ 10 về 1
Ví dụ 14
for n in range(10, 0, -1):
print(n)
Kết quả:
10
9
8
7
6
5
4
3
2
1
Có thể sử dụng để mô phỏng:
10
9
8
...
3
2
1
START!
Code:
for n in range(10, 0, -1):
print(n)
print("START!")
15. Một ví dụ giúp học sinh tự đoán kết quả
Ví dụ 15
Không chạy máy, hãy đoán kết quả:
for n in range(2, 10, 2):
print(n)
Phân tích
Bắt đầu:
2
Mỗi lần cộng 2:
2 → 4 → 6 → 8 → 10
Nhưng 10 không còn nhỏ hơn 10.
Vậy:
2
4
6
8
✅ Đáp án:
2 4 6 8
16. Bài tập tổng hợp
Sau khi học các ví dụ trên, có thể cho học sinh tự làm.
Bài 1
In các số từ 1 đến 20.
for n in range(1, 21):
print(n)
Bài 2
In các số chẵn từ 2 đến 20.
for n in range(2, 21, 2):
print(n)
Bài 3
In các số lẻ từ 1 đến 19.
for n in range(1, 20, 2):
print(n)
Bài 4
Đếm ngược từ 20 về 1.
for n in range(20, 0, -1):
print(n)
Bài 5
Tính tổng từ 1 đến 10.
tong = 0
for n in range(1, 11):
tong += n
print(tong)
Kết quả:
55
⭐ Công thức cần nhớ
Học sinh chỉ cần nhớ 3 dạng quan trọng nhất:
Dạng 1: range(stop)
range(5)
→
0 1 2 3 4
Dạng 2: range(start, stop)
range(1, 6)
→
1 2 3 4 5
Dạng 3: range(start, stop, step)
range(1, 10, 2)
→
1 3 5 7 9
Hoặc:
range(10, 0, -1)
→
10 9 8 7 6 5 4 3 2 1
⭐ Mẹo nhớ cực nhanh
START → STOP → STEP Bắt đầu → Dừng trước → Bước nhảy
Đặc biệt:
🔴 STOP không bao giờ được lấy.
Ví dụ:
range(1, 10)
không có 10.
range(1, 11)
mới có 10.
Ví dụ 3: Tính tổng các 2 số từ m đến n
m,n=map(int,input().split())
tong=0
for i in range(m,n+1):
tong+=i
print('tổng=',tong)
Bài 12: Cách dùng câu lệnh while (trong khi) làm sao?
Cú pháp cách dùng hàm while:
while (điều kiện của bài):
Chạy tiếp tục khi đúng điều kiện của bài
Ta có thể kết thúc vòng while bằng cách đưa đưa điều kiện về saihoặc dùng lệnh break để thoát
Ví dụ : câu lệnh lặp while
Viết chương trình yêu cầu nhập vào một số nguyên dương [1..10], nếu nhập sai yêu cầu nhập lại. Khi nhập đúng thì xuất ra bình phương của giá trị mới nhập vào.
Cách làm 1:
x=0
while x<1 or x>10:
x=int(input("Nhập một số nguyên x từ 1 đến 10"))
print(pow(x,2))
Cách làm 2:
x=0
while not (1<=x<=10):
x=int(input("Nhập một số nguyên x từ 1 đến 10"))
print(x**2)
Ví dụ: 3 tổng các số từ 1 đến số thứ n
n=int(input())
s=0
i=1
while i<=n:
s+=i
i+=1
print('tổng=',s)
Bài 13: Hàm sử dụng câu lệnh break (phá vỡ) là gì?
Hàm break là lệnh đặc biệt dùng để thoát khỏi vòng lặp trực tiếp chứa nó khi đạt được mức yêu cầu nào đó.
Gặp lệnh break, chương trình sẽ không thực hiện bất cứ lệnh nào bên dưới nó, mà thoát luôn khỏi vòng lặp.
Ví dụ: Viết chương trình vòng lặp vĩnh cửu cho phép phần mềm chạy liên tục, khi nào hỏi thoát mới thoát phần mềm:
while True:
a=int(input('nhập giá trị:'))
print('Giá trị a bạn nhập là=',a)
s=input('Muốn tiếp tục phần mềm không? nếu nhấn k thoát, nhấn t tiếp tục=')
if s=='k':
break
print('hẹn gặp lại nhé!')
Bài 14: Cách dùng câu lệnh continue (tiếp tục) như thế nào?
Câu lệnh continue là từ khóa đặc biệt dùng để nhảy sớm tới lần lặp kế tiếp,
Các lệnh bên dưới continue sẽ không được thực thi.
Lưu ý khác với break, gặp break thì ngừng luôn vòng lặp,
Gặp continue chỉ dừng lần lặp hiện tại đang dở dang để chuyển qua lần lặp tiếp theo.
Vídụ: Tính tổng các số lẻ từ 1->15, ngoại trừ số 3 và số 11
tong=0
for i in range(1,16,2):
if i==3 or i==11:
continue
tong+=i
print(tong)
Bài 15: Cách dùng vòng lặp for và else (ngược lại) ra sao?
khi ta chạy vòng lặp for , nếu không có điều kiện trong vòng lặp for thì ta dùng else ( ngược lại )
Ví dụ: Cho dãy số nguyên, nhập thêm số nguyên x. Tìm xem trong dãy số đã cho có x hay không?
a=[2,5,1,3,4]
x=int(input("Nhập số cần tìm"))
for i in range(len(a)):
if x ==a[i]:
print ("Có ", x, " ở vị trí ",i)
break
else:
print ("Không tìm thấy")
Bài 16: Cách dùng câu lệnh while ( trong khi) và else ( ngược lại) như thế nào?
Ví dụ: Nhập số nguyên x. Kiểm tra xem x có phải là số nguyên tố không ?
x=int(input("Nhập số nguyên"))
i=2
while i<x:
if x%i==0:
break
i+=1
else:
print(x, " là số nguyên tố")
if i<x:
print(x, " Không là số nguyên tố")
Bài 17: Cách sử dụng list ( mảng ) trong python như thế nào?
1)Ta có 4 loại kiểu dữ liệu thường dùng:
Hàm list( mảng ) trong Python không giới hạn bao nhiêu phần tử.
Hàm list có thể chứa bất kỳ kiểu dữ liệu nào.
khai báo mảng rỗng:
a=[]
Khai báo mảng có các giá trị:
a=[2,-3,0,5,1]
Khai báo mảng có 10 phần tử với giá trị mặc định là 2:
a=[2]*10 ( thì trong mảng a có 10 phần tử số 2)
Khai báo mảng có 5 phần tử có giá trị mặc định là k:
a=[‘k’]*5 ( thì trong mảng a có chữ k)
2)Cách truy cập các phần tử trong mảng a[index]:
Ví dụ: a=[2,-3,0,4,-1]
print(a[0]) (sẽ in ra số 2)
print(a[3]) (sẽ in ra số 4)
3) Cách thay đổi giá trị của một phần tử trong mảng a[vị trí]=số:
Ví dụ: a=[2,-3,0,4,-1]
a[2]=5 ( thì mảng a lúc này trở thành a=[2,-3,5,4,-1]
4) Cách lấy tổng số phần tử của mảng a ta dùng hàm len(a)
Ví dụ mảng a=[2,-3,0,4,-1,9]
print(len(a)) ( thì tổng các phần tử của mảng a là 6)
5) Cách kiểm tra 1 giá trị nào đó có tồn tại trong mảng a hay không?
Ví dụ: tìm phần tử x có trong mảng a hay không? Nếu có thì in ra vị trí, nếu không có thì in ” không tồn tại x trong mảng a”
a = ["apple","banana","cherry"]
if "apple" in a:
print("Yes, 'apple' is in the fruits a")
a = [1,5,4, 7, 6]
x=7
if x in a:
print('Co', x, 'o vi tri',a.index(x))
else:
print('Khong ton tai x trong mang a')
6) Cách dùng hàm insert ( chèn thêm ) trong mảng a.
Muốn chèn thêm một giá trị mới vào vị trí thích hợp ta sử dụng cú pháp
insert(vị trí muốn chèn, giá trị muốn chèn):
Ví dụ:
a=[1,2,3]
print(a) ( mảng a đang có các giá trị [1,2,3] )
a.insert(2,9) ( chèn thêm giá trị số 9 ở vị trí thứ 2)
print(a) ( mảng a bây giờ sẽ trở thành [1,2,9,3] )
a.insert(0,17)
print(a) (vậy mảng a trở thành [17,1,2,9,3])
7) Cách sử dụng phương thức append ( nối thêm) trong mảng a
Nghĩa là ta thêm giá trị mới ở cuối danh sách:
Ví dụ:
a=[1,2,3]
a.append(-113)
print(a) ( thì trong mảng a trở thành [1,2,3,-113])
8) Cách sử dụng phương thức pop trong mảng a
Nghĩa là xóa giá trị có trong thứ tự index trong danh sách
Ví dụ:
a=[1,3,2,5]
a.pop(1)
print(a) ( mảng a giờ trở thành [1,2,5])
9) Cách sử dụng phương thức remove( xóa giá trị ) trong mảng:
Nghĩa là remove( xóa) giá trị trong danh sách
Ví dụ:
a=[1,3,2,5,7]
a.remove(5)
print(a) ( thì mảng a giờ trở thành [1,3,2,7])
10) Cách chạy trong mảng:
print("*"*20)
a=[5,7,2,9,6,3,10,17,16]
for x in a:
print(x,end=' ')
print()
print('*'*20)
for i in range(len(a)):
x=a[i]
print(x,end=' ')
print()
print('*'*20)
for i in range(len(a)-1,-1,-1):
x=a[i]
print(x,end=' ')
Ví dụ: Nhập vào một số nguyên nếu không đúng số nguyên thì nhập lại ( nhập khi nào đúng số nguyên mới được nếu không thôi chương trình kêu nhập hoài tới cháy máy tính mới ngưng)
while True:
try:
x = int(input('Nhập một số nguyên: '))
break
except ValueError:
print(" Đó không phải số nguyên. Làm lại...")
Kết quả:
Nhập một số nguyên: 5.6
Đó không phải số nguyên. Làm lại...
Nhập một số nguyên: 5
Vậy là xong 21 bài viết mỏi cả 2 tay quá rồi ! các anh em nào muốn học Python online nhớ “LIÊN HỆ MÌNH NGAY ” 0937.179.278 (gặp Tấn Dân ) ủng hộ mình nhé !
Tải Ngay Giáo trình tài liệu tự học Python tiếng việt từ cơ bản đến nâng cao tập tin PDF :
Các bạn có thể tải ngay giáo trình tài liệu tự học Python bằng tiếng việt để các bạn có thể tự học tại nhà tập tin PDF
Tài liệu Python PDF
Hoặc bạn cũng có thể sử dụng tập tin PowerPoint cho dễ xem nhé !
Tài liệu Python PowerPoint
Nếu có vấn đề gì không hiểu hãy liên hệ ngay mình, mình sẽ hướng dẫn tận tình cho bạn nhé!
Nếu bạn thấy hay ! xin bạn 1 phút ! vui lòng đánh giá 5 sao cho trang website của chúng tôi ! để có động lực làm thêm nhiều bài hay nữa ! cảm ơn quý khách nhé !