1. Trang chủ
  2. » Công Nghệ Thông Tin

Tài liệu lập trình Python cơ bản(Dành cho HS THPT)

91 355 4

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 91
Dung lượng 2,22 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Tài liệu lập trình Python cơ bản(Dành cho HS THPT) Python là một ngôn ngữ lập trình kịch bản (scripting language) do Guido van Rossum tạo ra năm 1990. Đến nay thì cộng đồng người sử dụng ngôn ngữ này rất đông, nếu so sánh từ bảng xếp hạng các ngôn ngữ năm 2019 thì Python đứng thứ 1 trong top 10 ngôn ngữ phổ biến nhất.

Trang 1

Mục lục

Bài 1: Khái niệm lập trình và ngôn ngữ lập trình 2

Bài 2: Tổng quan về Python 4

Bài 3: Nhập/xuất cơ bản, câu lệnh gán trong Python 13

Bài 4: Khai báo biến trong python 16

Bài 5: Kiểu dữ liệu số trong Python 19

Bài 6: Các toán tử cơ bản trong Python 29

Bài 7: Câu lệnh rẽ nhánh trong Python 33

Bài 8: Vòng lặp trong Python 36

Bài 9: Hàm trong Python 40

Bài 10: Chuỗi(xâu) trong Python 46

Bài 11: List(danh sách, mảng) trong Python 50

Bài 12: Tuple(hằng) trong Python 54

Bài 13: Dictionary(Từ điển, bản ghi) trong Python 57

Bài 14: Đọc ghi file trong Python 61

Bài 15: Các hàm xử lý chuỗi trong Python 65

Bài 16: Các hàm xử lý list trong Python 81

Trang 2

Bài 1: Khái niệm lập trình và ngôn ngữ lập trình

1 Khái niệm lập trình

Lập trình là việc sử dụng cấu trúc dữ liệu và các lệnh của ngônngữ lập trình cụ thể để mô tả dữ liệu và diễn đạt các thao tác củathuật toán

2 Khái niệm và phân loại ngôn ngữ lập trình

Là ngôn ngữ dùng để diễn tả thuật toán sao cho máy tính hiểu vàthực hiện được Có 3 loại NNLT:

- Ngôn ngữ máy : Các lệnh được mã hóa bằng các kí hiệu 0 – 1.Chương trình được viết trên ngôn ngữ máy có thể được nạp vào

bộ nhớ và thực hiện ngay

- Hợp ngữ: sử dụng các từ viết tắt tiếng Anh để diễn tả câu lệnh

- Ngôn ngữ bậc cao : Các lệnh được mã hóa bằng một ngôn ngữgần với ngôn ngữ Tiếng Anh Chương trình viết trên ngôn ngữbậc cao phải được chuyển đổi thành chương trình trên ngôn ngữmáy mới có thể thực hiện được Phải sử dụng một chương trìnhdịch để chuyển đổi Lập trình bằng ngôn ngữ bậc cao dễviết hơn vì các lệnh được mã hóa gần với ngôn ngữ tự nhiên.Lập trình trên ngôn ngữ máy rất khó, thường các chuyên gia lậptrình mới lập trình được

3 Chương trình dịch

a Biên dịch (compiler) :

Bước 1 : Duyệt, phát hiện lỗi, kiểm tra tính đúng đắn của lệnh

trong chương trình nguồn

Bước 2 : Dịch toàn bộ chương trình nguồn thành một chương trình

trên ngôn ngữ máy

(Thuận tiện cho các chương trình ổn định và cần thực hiện nhiềulần)

Trang 3

Bước 3 : Thực hiện các câu lệnh vừa được chuyển đổi

(phù hợp với môt trường đối thoại giữa người và máy)

Lưu ý: một trong những nhiệm vụ quan trọng của chương trình

dịch là phát hiện lỗi cú pháp của chương trình nguồn

4 Các thành phần của ngôn ngữ lập trình

Mỗi ngôn ngữ lập trình thường có ba thành phần cơ bản: bảng chữcái, cú pháp và ngữ nghĩa

a Bảng chữ cái: Là tập các kí hiệu dùng để viết chương trình.

- Trong ngôn ngữ Python bảng chữ cái gồm: Các chữ cái trongbảng chữ cái tiếng Anh, các chữ số 0 -> 9 và một số kí tự đặc biệt(SGK)

b Cú pháp: là bộ qui tắc dùng để viết chương trình cho ta biết

cách viết một chương trình hợp lệ

c Ngữ nghĩa: xác định ý nghĩa thao tác cần phải thực hiên , ứng

với tổ hợp kí tự dựa vào ngữ cảnh của nó

- Cú pháp cho biết cách viết một chương trình hợp lệ , còn ngữ

nghĩa xác định ý nghĩa của các tổ hợp kí tự trong chương trình

- Lỗi cú pháp được chương trình dịch phát hiện và thông báo chongười lập chương trình biết , chỉ có các chương trình không còn lỗi

cú pháp mới có thể được dịch sang ngôn ngữ máy

- Lỗi ngữ nghĩa chỉ được phát hiện khi thực hiện chương trình trên

dữ liệu cụ thể

Trang 4

Bài 2: Tổng quan về Python

1 Python là gì?

- Python là một ngôn ngữ lập trình kịch bản (scripting

language) do Guido van Rossum tạo ra năm 1990 Đến nay thì

cộng đồng người sử dụng ngôn ngữ này rất đông, nếu so sánh từbảng xếp hạng các ngôn ngữ năm 2019 thì Python đứng thứ 1trong top 10 ngôn ngữ phổ biến nhất

Và Python luôn được biết đến với các đặc điểm sau đây:

Trang 5

Xử lý lỗi dựa theo ngoại lệ.

Kiểu dữ liệu động ở mức rất cao

Các thư viện chuẩn và các mô-đun ngoài bao quát hầu như mọiviệc

Phần mở rộng và mô-đun dễ dàng viết trong C, C++

Có thể nhúng trong ứng dụng như một giao diện kịchbản (scripting interface)

Python mạnh mẽ và thực hiện rất nhanh

2 Cài đặt Python.

Python hỗ trợ hầu hết trên các hệ điều hành hiện nay, và cách càiđặt nó cũng rất đơn giản Tuy nhiên ở bài này sẽ chỉ hướng dẫn càiđặt python trên môi trường window, các môi trường khác tương tự.Đầu tiên chúng ta cần download bộ cài python từ trang chủ của

nó (download) Ở đây chúng ta chọn phiên bản mới nhất là phiênbản 3.8.5

Tiếp đó chúng ta chạy file vừa tải về và cài đặt theo các bước nhưsau:

Trang 6

Tích chọn Run

Chọn Install Now

Trang 7

Đợi quá trình cài đặt

Màn hình báo thành công

Trang 8

Tiếp tục cài phần mềm IDE cho Python

Link phần mềm PyCharm: https://www.jetbrains.com/pycharm/

Bấm chọn Download

Trang 9

Chọn phiên bản Community

Chạy các bước cài đặt như phần mềm Python phía trên

Màn hình làm việc chính phần mềm PyCharm

3 Chạy chương trình đầu tiên.

- Sau khi đã cài đặt thành công python Tại thư mục mặc định Bấmchuột phải chọn New\Python File

Trang 10

Sau đó đặt tên là hello.py

Và viết đoạn code sau vào:

print ('Hello world!')

Trang 11

- Bây giờ để có thể chạy được đoạn code trên chúng ta nhấn

chuột phải vào vị trí tên file hello.py và chọn Run.

- Kết quả thu được(vùng màu đỏ):

Trang 13

Bài 3: Nhập/xuất cơ bản, câu lệnh gán trong Python

1 Xuất kết quả ra màn hình trong Python.

Hàm print trong Python có tác dụng hiển thị dữ diệu ra màn hình

khi chương trình thực thi Sử dụng với cú pháp như sau:

print(content)

Trong đó: content là nội dung hay biến muốn in ra màn hình,

nếu muốn hiển thị nhiều nội dung khác nhau trên cùng mộtlần print thì chúng ta chỉ cần ngăn các giữa các nội dung bằng dấu,

2 Thay đổi ngắt dòng print.

Mặc định thì mỗi lần chúng ta print dữ liệu thì nó sẽ tự ngắt dòngcho dòng tiếp theo

VÍ DỤ:

Print(‘Elearning.c3vietduc.daklak.edu.vn’)

Print(‘Author: Thanh Long’)

Khi chạy đoạn code trên thì chúng ta sẽ thu được kết quả:

Elearning.c3vietduc.daklak.edu.vn

Author: Tin hoc

Vậy ở đây, khi chúng ta không muốn nó tự động ngắt dòng mỗi

khi kết thúc print nữa thì mọi người sử dụng từ khóa end thêm

vào param cuối cùng của hàm print với cú pháp như sau:

Trang 14

print(content, end = "charset")

Trong đó là charset là ký tự mà chúng ta muốn thực hiện khi kếtthúc hàm print

print("Elearning.c3vietduc.daklak.edu.vn", end = " - ")print("Hoc lap trinh online")

Kết quả:

Elearning.c3vietduc.daklak.edu.vn - Hoc lap trinh online

3 Input.

Trong Python có cung cấp cho chúng ta hàm input để nhận dữ liệu

từ người dùng nhập vào trong commandline Sử dụng với cú phápnhư sau:

input(something)

Trong đó: something là nội dung mà chúng ta muốn hiển thị

trước khi người dùng nhập dữ liệu Và giá trị mà hàm này trả vềchính là giá trị mà người dùng nhập vào

VÍ DỤ: Nhập tuổi người dùng và in ra tuổi mà người dùng nhập

tử nằm trong dạng này mà Python hỗ trợ

Trang 15

= Toán tử này dùng để gán giá trịcủa một đối tượng cho một giá trị c = a (lúc này csẽ có giá trị = 5)

đối tượng

c += a (tươngđương với c = c+ a)

-= Toán tử này trừ rồi gắn giá trị chođối tượng

c -= a (tươngđương với c = c -a)

đối tượng

c *= a (tươngđương với c = c *a)

/= Toán tử này chia rồi gắn giá trị chođối tượng

c /= a (tươngđương với c = c /a)

% Toán tử này chia hết rồi gắn giá trịcho đối tượng c %= a (tươngđương với c = c

% a)

**= Toán tử này lũy thừa rồi gắn giá trịcho đối tượng

c **= a (tươngđương với c = c

** a)//= Toán tử này chia làm tròn rồi gắngiá trị cho đối tượng c //= a (tươngđương với c =

c // a)

Trang 16

Bài 4: Khai báo biến trong python

1 Khai báo biến trong Python.

Để khai báo biến trong Python chúng ta sử dụng cú pháp:

tenBien = giaTri

Trong đó:

tenBien là tên của biến mà người lập trình muốn đặt Tên biến

này không được bắt đầu bằng số hay các ký tự đặc biệt, mà chỉđược bắt đầu bằng chữ cái hoặc ký tự gạch dưới (_) và nó có phânbiệt hoa thường

giaTri là giá trị của biến muốn gán.

VÍ DỤ: Khai báo một biến name trong Python.

name, age, male = "Thành Long", 32 , True

2 Các kiểu dữ liệu cơ bản trong Python.

Python cũng giống như một số các ngôn ngữ bậc cao khác, khi ta

khai báo biến thì kiểu dữ liệu của nó sẽ tự động được phát hiện

và định nghĩa Vì vậy nên chúng ta cũng không phải quá vất vả

khi khai báo 1 biến

Ví dụ: Các kiểu dữ liệu cơ bản trong python.

name = "Thành Long" #string(Xâu)

age = 32 #integer(Số nguyên)

point = 8.9 #float(Số thực)

Trang 17

option = [1,2,3,4,5] #lists(Ma ng)

dictionary = {"name": "Thanh Long", "age": 32, "male":

3 Kiểm tra kiểu dữ liệu.

Trong python, để kiểm tra kiểu dữ liệu của một biến thì chúng ta

có thể sử dụng hàm type với cú pháp như sau:

4 Ép kiểu dữ liệu trong Python.

Trong một trường hợp nào đó mà người lập trình muốn chuyển đổikiểu dữ liệu của một biến, thì Python hỗ trợ qua các hàm cơ bảnsau:

float(data) chuyển đổi sang kiểu số thực

int(data,base) chuyển đổi sang kiểu số, trong đó base là kiểu

hệ số mà các bạn muốn chuyển đổi sang (tham số này có thể bỏtrống)

Trang 18

str(data) chuyển đổi sang dạng chuỗi.

complex(data) chuyển đổi sang kiểu phức hợp

tuple(data) chuyển đổi sang kiểu Tuple

dict(data) chuyển đổi sang kiểu Dictionary

hex(data) chuyển đổi sang hệ 16

oct(data) chuyển đổi sang hệ 8

chr(data) chuyển đổi sang dạng ký tự

Trang 19

Bài 5: Kiểu dữ liệu số trong Python

1 Kiểu dữ liệu số(number) trong Python.

Một biến được khai báo là kiểu dữ liệu số trong Python thì xét vềmặt lưu trữ bộ nhớ thì nó sẽ không thay đổi được giá trị, mà khichúng ta gán giá trị mới cho biến đó thì thực chất nó sẽ tạo ra các

ô nhớ mới khác để lưu trữ giá trị mới đó

Trong Python hỗ trợ chúng ta 3 kiểu dữ liệu dạng số như sau:

int kiểu số nguyên kiểu này có kích thước không giới hạn (python

2 thì bị hạn chế)

float kiểu số thực Kiểu này ngoài kiểu viết bình thường ra thì nó

cũng có thể được hiển thị dưới dạng số mũ E (VÍ DỤ: 2.5e2 = 250)

complex kiểu số phức đây là kiểu dữ liệu rất ít khi được sử dụng

tới, nên không giải thích thêm ở đây

Nếu muốn giải phóng một vùng nhớ cho một biến trong Python thì

có thể sử dụng lệnh del với cú pháp sau:

del avariableName

//hoặc xóa nhiều biến

del avariableName1, avariableName2, , avariableName3

Trong đó: avariableName, avariableName1, là các biến mà bạn

Trang 20

3 Xử lý số học với module math trong Python

3.1 abs().

Hàm này có tác dụng trả về giá trị tuyệt đối của một số

Lưu ý: Hàm này không nằm trong module math, nên các bạn

không cần phải import modules math

Hàm này có tác dụng trả về giá trị tuyệt đối của một số Nhưng nó

sẽ có khác với hàm abs() ở trên là hàm này sẽ chỉ chấp nhận

Trang 21

chuyển đổi được kiểu số nguyên (integer) và số thực (float) trongkhi hàm abs() chuyển đổi được cả complex number.

Cú pháp:

math.fabs(number)

Trong đó: number là số mà các bạn muốn chuyển đổi.

3.3 ceil().

Hàm này có tác dụng chuyển đổi một số về dạng số nguyên của

nó và số nguyên đó phải lớn hơn hoặc bằng số ban đầu Nói mộtcách đơn giản thì hàm này có tác dụng làm tròn lên 1 số

Trang 23

Lưu ý: Hàm này không nằm trong module math, nên các bạn

không cần phải import modules math

Trang 24

Lưu ý: Hàm này không nằm trong module math, nên các bạn

không cần phải import modules math

Trang 25

Hàm này có tác dụng trả về kết quả của phép xy, với x là tham sốthứ nhất, y là tham số thứ 2.

Lưu ý: Hàm này không nằm trong module math, nên các bạn

không cần phải import modules math

Trang 28

Tương tự như với asin() - sin() và acos() - cos() ta cũng

có atan() và tan() với chức năng là tính tangent của một số

Trang 29

Bài 6: Các toán tử cơ bản trong Python

1 Toán tử số học - Arithmetic Operators.

Toán tử số học trong python được thể hiện dưới 7 dạng cơ bảnsau: (trong các ví dụ dưới đây thì ta coi a có giá trị là 5 và b có giátrị là 7)

Toán

- với nhauToán tử trừ các giá trị lại a - b = -2

nhau

= 0.7142857142857143

a // b = 0

Trang 30

-0.1 => -1

2 Toán tử quan hệ.

Dạng toán tử này dùng để so sánh các giá trị với nhau kết quả của

nó sẽ trả về là True nếu đúng và False nếu sai Và nó thường đượcdùng trong các câu lệnh điều kiện

Trong Python thì nó cũng tồn tại 6 dạng toán tử quan hệ cơ bảnnhư sau:

(trong các ví dụ dưới đây thì ta coi a có giá trị là 5 và b có giá trị là7)

Toán

==

So sánh giá trị của các đối số xem

có bằng nhau hay không Nếubằng nhau thì kết quả trả về sẽ

là True và ngược lại sẽ là False

a == b //False

!=

So sánh giá trị của các đối số xem

có khác nhau hay không Nếukhác nhau thì kết quả trả về sẽ

là True và ngược lại sẽ là False

a != b //True

<

Dấu < đại diện cho phép toán nhỏhơn, nếu đối số 1 nhỏ hơn đối số 2thì kết quả sẽ trả về là True vàngược lại sẽ là False

a < b //True

>

Dấu > đại diện cho phép toán lớnhơn, nếu đối số 1 lớn hơn đối số 2thì kết quả sẽ trả về là True vàngược lại sẽ là False

a > b //False

hơn hoặc bằng, nếu đối số 1 nhỏhơn hoặc bằng đối số 2 thì kết quả

a <= b //True

Trang 31

sẽ trả về là True và ngược lại sẽ làFalse.

>=

Dấu > đại diện cho phép toán lớnhơn hoặc bằng, nếu đối số 1 lớnhơn hoặc bằng đối số 2 thì kết quả

sẽ trả về là True và ngược lại sẽ làFalse

Nếu 1 trong 2 vế là True thì kết quả trả về sẽ là True

và ngược lại nếu cả 2 vế là False thì kết quả trả về

00001100 và b = 00001111 Về phần này thì rất ít khi sử dụng vàcũng khó dịch sang tiếng việt nên ở phần này chỉ viết toán hạng

và ví dụ thôi

Trang 32

sẽ trả về True và ngược lại/

a in b//Falsenot in Nếu 1 đối số không thuộc một tậpđối số nó sẽ trả về True và ngược lại/ a not inb //True

is Toán tử này sẽ trả về True nếu a== b và ngược lại a is b //False

Trang 33

a != b và ngược lại //True

Trang 34

Bài 7: Câu lệnh rẽ nhánh trong Python

1 Luồng xử lý.

Nếu như trong thực tế, chúng ta thường có các trường hợp để xử

lý vấn đề thì trong ngôn ngữ lập trình nó cũng như thế khái niệmnày trong lập trình gọi là rẽ nhánh

Nói một cách dễ hiểu hơn thì "nếu điều kiện này đúng thì thực

hiện khối lệnh A, nếu sai thì thực hiện khối lệnh B" Ở đây các điều

kiện trả về giá trị khác 0 hoặc bằng True thì coi là đúng và trả

về 0, None hoặc False thì coi là sai.

2 Các câu lệnh rẽ nhánh.

Câu lệnh rẽ nhánh trong Python được thể hiện qua cậu lệnh if-elsevới các dạng sau:

Câu lệnh if-else

If-else dịch ra tiếng Việt có nghĩa là nếu thì và nó ở trong lập trình

cũng thế Các điều kiện mà mệnh đề if đưa ra trả về là đúng(True) thì nó sẽ thực thi code bên trong mệnh đề if và ngược lạinếu điều kiện đó sai thì nó sẽ thực hiện code trong mệnh đề else

Cú pháp của câu lệnh if-else:

if condition:

Trang 35

#code

else:

#code

Trong đó: condition là điều kiện của mệnh đề if.

VÍ DỤ: Viết 1 chương trình kiểm tra xem giá trị của biến a bằng

100 thì in ra là đúng và nếu không bằng thì in ra là sai

# Ket qua: Dung

Nếu như trong trường hợp chúng ta không cần thực thi điều gì khiđiều kiện đó không đúng thì chúng ta có thể bỏ mệnh đề else chogọn code

VÍ DỤ: Bỏ mệnh đề else ở VD trên đi.

a = 100

if (a == 100):

print('Dung')

# Ket qua: Dung

Và đương nhiên là chúng ta cũng có thể lồng các if đó lại với nhauđược

VÍ DỤ: Viết chương trình kiểm tra xem điểm có hợp lệ hay không,

nếu hợp lệ thì in ra là với điểm đó thì qua môn hay học lại

Trang 36

print('Diem khong hop le')

# Ket qua: Qua mon

Trong đó: thì sau các mệnh đề if và elif sẽ tồn tại các điều

kiện condition tương ứng, và nếu như các điều kiện đó đúng thì

code ở trong mệnh đề đó sẽ được thực hiện

VÍ DỤ: Giải quyết lại bài toán tính điểm ở trên bằng mệnh đề

print('Diem khong hop le')

# Ket qua: Qua mon

Trang 37

Bài 8: Vòng lặp trong Python

2 Vòng lặp for trong Python.

Vòng lặp for ở trong Python có tác dụng lặp các biến dữ liệu cótrong list, tuble hoặc string… Sử dụng cú pháp như sau:

for variable in data:

Trang 38

Chú thích: Ở đây sử dụng hàm range(a,z) để tạo ra các con số từ

a -> z, ở các phần sau chúng ta sẽ tìm hiểu rõ hơn về hàm này

Trong đó: condition là điều kiện quyết định vòng lặp while có được

chạy hay không Nếu condition trả về giá trị là True thì vòng

Trang 39

lặp while mới được thực thi, và ngược lại thì nó sẽ không thực thinếu condition trả về False.

VÍ DỤ: Viết một vòng lặp while in ra dãy số từ 1 đến 10.

Trang 40

Thông thường trong một số trường hợp vòng lặp của chúng ta sẽ

có thể không cần thực thi code trong một số vòng lặp cụ thể hay

là cần nhảy lần vòng lặp đó và thực thi các lần lặp tiếp theo, và đểlàm được điều đó thì trong Python có hỗ trợ chúng ta 2 từ khóa đểtác động đến vòng lặp là:

break - break giúp chúng ta chấm dứt vòng lặp tại thời điểm nó

xuất hiện và các code cùng cấp phía sau nó sẽ không được thựcthi nữa

continue - giúp chúng ta nhảy qua lần lặp hiện tại và chuyển đến

lần lặp tiếp theo, các code cùng cấp phía sau nó cũng sẽ khôngđược thực hiện

Ngày đăng: 23/10/2020, 21:39

TỪ KHÓA LIÊN QUAN

w