Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 39

Mô n Họ c

KỸ THUẬT LẬP TRÌNH


VỚI PYTHON
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1

CÁC KHÁI NIỆM CƠ BẢN

Trang 2
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
Mục tiêu bài học

- Hiểu và thự c hiện đượ c cá c kiẻu dữ liệu cơ bả n


- Khai bá o đượ c biến, ghi chú
- Thự c hà nh đượ c cá c toá n tử
- Nhậ p liệu đượ c từ bà n phím
- Xử lý đượ c cá c lỗ i

Trang 3
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
Nội dung bài học

2.1. Kiểu dữ liệu cơ bả n và khai bá o biến trong Python


2.2. Cá ch ghi chú lệnh trong Python
2.3. Cá c toá n tử thườ ng dù ng trong Python
2.4. Cá ch nhậ p liệu từ bà n phím trong Python
2.5. Cá c kiểu xuấ t dữ liệu
2.6. Cá c loạ i lỗ i trong Python

Trang 4
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
2.1. Kiểu dữ liệu cơ bản và khai báo biến trong Python
2.1.1. Cá c kiểu dữ liệu cơ bả n trong Python
2.1. 2. Khai bá o biến trong Python
2.1. 3. Cá ch xó a biến
2.1. 4. Cá ch kiểm tra vù ng lưu trữ giá trị củ a cá c biến int, float

Trang 5
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW
2.1.1. Cá c kiểu dữ liệu cơ bả n trong Python Web kinh doanh 1

• Kiểu int: Kiểu số nguyên (khô ng có chứ a dấ u chấ m thậ p phâ n), có thể
lưu cá c số nguyên â m và dương.
– Ví dụ : 113, -114
• Kiểu float: Kiểu số thự c (có chứ a dấ u chấ m thậ p phâ n),
– ví dụ : 5.2, -7.3

Trang 6
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW
2.1.1. Cá c kiểu dữ liệu cơ bả n trong Python Web kinh doanh 1

• Kiểu complex: Kiểu số phứ c,


– ví dụ 1: z = 2+3j thì 2 là phầ n thự c, 3 là phầ n ả o (j là từ khó a để đá nh
dấ u phầ n ả o)
– ví dụ 2: z=complex(2,3) thì 2 là phầ n thự c, 3 là phầ n ả o
– khi xuấ t kết quả ta có thể xuấ t:
• print(“Phầ n thự c= “,z.real) ==>Phầ n thự c= 2
• print(“Phầ n ả o= “,z.imag) ==> Phầ n ả o= 3

Trang 7
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW
2.1.1. Cá c kiểu dữ liệu cơ bả n trong Python Web kinh doanh 1

• Kiểu str: Kiểu chuỗ i, để trong nháy đô i hoặ c nháy đơn


– Ví dụ : “Obama”, ‘Putin’
• Kiểu bool: Kiểu luậ n lý, để lưu True hoặ c False
– Ví dụ 1: t1=True
– Ví dụ 2: t2=False

Trang 8
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW
2.1.2. Khai bá o biến trong Python Web kinh doanh 1

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. Ta có thể dù ng
hà m type() để kiểm tra kiểu dữ liệu củ a biến:

Trang 9
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW
2.1.2. Khai bá o biến trong Python Web kinh doanh 1

x=5 Vớ i x = 5 ta có kiểu dữ liệu: <class ‘int’>


print(type(x)) Vớ i x = ‘teo’ ta có kiểu dữ liệu:<class ‘str’>
x='teo' Vớ i x = True ta có kiểu dữ liệu:<class ‘bool’>
print(type(x)) Vớ i x = 5.5 ta có kiểu dữ liệu:<class ‘float’>
x=True Vớ i x = complex(113,114) ta có kiểu dữ
print(type(x)) liệu:<class ‘complex’>
x=5.5
print(type(x)) print(x.real,x.imag)
x=complex(113,114) thực:113, ảo:114
print(type(x))

Trang 10
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW
2.1.3. Cá ch xó a biến Web kinh doanh 1

Trong Python có mộ t điểm thú vị là : Nếu biến đó đang tồ n tạ i mà ta xó a nó


đi thì khô ng cò n sử dụ ng đượ c nữ a (tương tự trong C++ khi chú ng ta thu
hồ i bộ nhớ củ a con trỏ vậy), Python dù ng từ khó a del để xó a:

x="Obama" Obama
print(x) Traceback (most recent call last):
del x File "/XoaBien.py", line 4, in <module>
print(x) print(x)
NameError: name 'x' is not defined

Trang 11
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
2.1.4. Cá ch kiểm tra vù ng lưu trữ
Ta có thể kiểm tra vù ng lưu trữ giá trị củ a cá c biến int, float bằ ng cá ch
import thư viện sys để có thể xem đượ c chi tiết:
import sys
print("Thông tin chi tiết của int:")
print(sys.int_info)
print("Thông tin chi tiết của float:")
print(sys.float_info)

Thông tin chi tiết của int:


sys.int_info(bits_per_digit=15, sizeof_digit=2)
Thông tin chi tiết của float:
sys.float_info(max=1.7976931348623157e+308, max_exp=1024, max_10_exp=308,
min=2.2250738585072014e-308, min_exp=-1021, min_10_exp=-307, dig=15,
mant_dig=53, epsilon=2.220446049250313e-16, radix=2, rounds=1)

Trang 12
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
2.2. Cách ghi chú lệnh trong Python
2.2.1. Vì sao nên ghi chú khi lậ p trình
2.2.2. Ghi chú 1 dò ng
2.2.3. Ghi chú nhiều dò ng

Trang 13
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW
2.2.1. Vì sao nên ghi chú khi lậ p trình Web kinh doanh 1

Việc ghi chú lệnh mộ t cá ch cẩ n thậ n khi lậ p trình thể hiện tính chuyên
nghiệp củ a Lậ p trình viên. Khô ng phả i nó i ngoa nếu như cá c bạ n đượ c
phỏ ng vấ n xin việc, nếu Cô ng ty kiểm tra coding từ cá c Project sample củ a
bạ n mà thấy bạ n khô ng có ghi chú mộ t cá ch cẩ n thậ n (cho dù bạ n có lậ p
trình giỏ i tớ i mấy) thì khả nă ng bị loạ i cự c cao, nếu giỏ i mà cẩ u thả thì
cà ng nguy hiểm, vì độ “sá t thương” cho cá c dự á n rấ t cao.

Triển khai nhiều dự á n, viết nhiều lệnh nếu khô ng ghi chú : Khó khă n cho
chính bả n thâ n Programmer khi đọ c lạ i và rấ t khó training khi có nhâ n
viên mớ i và o là m việc.

Trang 14
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW
2.2.2.Ghi chú 1 dò ng Web kinh doanh 1

Python dù ng từ khó a # để cho phép ta ghi chú 1 dò ng:

Trang 15
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
2.2.3. Ghi chú nhiều dò ng
Để 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)

Trang 16
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
2.2.3. Ghi chú nhiều dò ng
Để 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)

Trang 17
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
2.3. Các toán tử thường dùng trong Python
Mỗ i mộ t ngô n ngữ lậ p trình đều có tậ p cá c toá n tử thườ ng dù ng và đa
phầ n chú ng khá giố ng nhau. Nhữ ng bạ n nà o đã họ c C++, java, C# thì qua
Python cũ ng tương tự . Trong Python cò n bổ sung thêm nhiều toá n tử khá
hữ u ích khá c nữ a, dướ i này liệt kê 4 loạ i toá n tử cơ bả n thườ ng dù ng nhấ t
trong Python (cá c loạ i khá c bạ n có thể xem thêm tạ i:
https://docs.python.org/3/library/stdtypes.html ):
2.3.1. Toá n tử số họ c cơ bả n
2.3.2. Toá n tử gá n
2.3.3. Toá n tử So sá nh
2.3.4. Toá n tử Logic
2.3.5. Độ ưu tiên toá n tử

Trang 18
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW
2.3.1.Toá n tử số họ c cơ bả n Web kinh doanh 1

Toán tử Mô tả Ví dụ
+ Cộ ng 12 + 4.9 => kết quả 16.9
– Trừ 3.98 – 4 => kết quả -0.02
* Nhâ n 2 * 3.4 => kết quả 6.8
/ Chia 9 / 2 => kết quả 4.5
// Chia lấy phầ n nguyên 9 // 2 => kết quả 4
% Chia lấy phầ n dư 9%2 =>kết quả 1
** Lũ y thừ a 3**4=>kết quả 81

Trang 19
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW
2.3.2.Toá n tử gá n Web kinh doanh 1

Toán tử Mô tả Ví dụ Tương đương với

= Phép gá n giá trị bên phả i cho biến x=5


bên trá i dấ u bằ ng
x=2
+= Cộ ng và gá n x+=5 x=x+5
==>x=7
x=2
-= Trừ và gá n x-=5 x=x-5
==>x=-3
x=2
*= Nhâ n và gá n x*=5 x=x*5
==>x=10

Trang 20
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW
2.3.2.Toá n tử gá n Web kinh doanh 1

Toán tử Mô tả Ví dụ Tương đương với


x=7
/= Chia và gá n x/=5 x=x/5
==>x=1.4
x=7
//= Chia và gá n (lấy nguyên) x//=5 x=x//5
==>x=1

x=7
%= Chia lấy dư x%=5 x=x%5
==>x=2
x=2
**= Lấy lũ y thừ a và gá n x**=3 x=x**3
==>x là 2 mũ 3 =8

Trang 21
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW
2.3.3.Toá n tử So sá nh Web kinh doanh 1

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
Trả về true nếu cá c biến ở hai bên toá n x=5
is tử cù ng trỏ tớ i mộ t đố i tượ ng(hoặ c y=5
cù ng giá trị), nếu khô ng là false print(x is y)
=>kết quả là True

Trả về false nếu cá c biến ở hai bên toá n x=5


is not tử cù ng trỏ tớ i mộ t đố i tượ ng(hoặ c y=5
cù ng giá trị), nếu khô ng là true print(x is not y)
=>kết quả là False

Trang 22
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW
2.3.4.Toá n tử Logic Web kinh doanh 1

Toán tử Mô tả Ví dụ
x=2016
and Toá n tử Và : Nếu cả hai điều kiện là True thì print(x%4==0 and x%100!
kết quả sẽ là True =0)
=>True
x=2016
or Toá n tử Hoặ c: Chỉ cầ n mộ t điều kiện True thì print((x%4==0 and x
nó True, tấ t cả điều kiện False thì nó False %100!=0) or x%400==0)
=>True

x=4
Toá n tử Phủ định. Thô ng thườ ng nó đượ c if (not x>=5):
not dù ng để đả o ngượ c trạ ng thá i logic củ a toá n print("Ngắ m gà khỏ a thâ n
hạ ng và nả i chuố i")
else: print("Đậ u")

Trang 23
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW
2.3.5.Độ ưu tiên toá n tử Web kinh doanh 1

Python có rà ng buộ c thứ tự ưu tiên củ a cá c toá n tử . Tuy nhiên tố t nhấ t là


cá c bạ n hay điều khiển nó bằ ng cá ch dù ng cặ p ngoặ c trò n ( ) để nó rõ
nghĩa hơn. Bả ng dướ i đây để tham khả o độ ưu tiên từ cao xuố ng thấ p (tuy
nhiên có thể quên nó đi mà hãy dù ng ngoặ c trò n () để chỉ định rõ ).

Trang 24
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW
2.3.5.Độ ưu tiên toá n tử Web kinh doanh 1

Thứ tự ưu tiên Toán tử Miêu tả


1 ** Toá n tử mũ
Phép nhâ n, chia, lấy phầ n dư và
2 * / % // phép chia lấy phầ n nguyên
3 +– Toá n tử Cộ ng, Trừ
4 <= < > >= Cá c toá n tử so sá nh
5 <> == != Cá c toá n tử so sá nh
6 = %= /= //= -= += *= **= Cá c toá n tử gá n
7 is , is not Cá c toá n tử so sá nh
8 not, or, and Cá c toá n tử Logic

Trang 25
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
2.4. Cách nhập liệu từ bàn phím trong Python
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("Mời bạn nhập cái gì đó:")


s=input()
print("Bạn nhập:",s)
print("Kiểu dữ liệu:",type(s))

Trang 26
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
2.4. Cách nhập liệu từ bàn phím trong Python

Muố n đưa về số int

print("Mời thím nhập int:")


x=int(input())
print("Bạn nhập:",x)
print("Kiểu dữ liệu:",type(x))

Trang 27
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
2.4. Cách nhập liệu từ bàn phím trong Python

Muố n đưa về số float

print("Mời thím nhập int:")


x=float(input())
print("Bạn nhập:",x)
print("Kiểu dữ liệu:",type(x))

Trang 28
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
2.4. Cách nhập liệu từ bàn phím trong Python

Muố n đưa về số boolean

def StrToBool(s):
return s.lower() in ("yes", "true", "t", "1")

print("Mời thím nhập bool:")


x = StrToBool(input())
print("Bạn nhập:", x)
print("Kiểu dữ liệu:", type(x))

Trang 29
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
2.4. Cách nhập liệu từ bàn phím trong Python

Ngoà i ra hà m input() cò n có cho phép ta nhậ p nhã n tiêu đề và o như sau:


x=input("Mời bạn nhập giá trị gì đó:")
print("Bạn nhập: ",x)

Trang 30
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
2.5. Các kiểu xuất dữ liệu

Để xuấ t lặ p dữ liệu ra mà n hình ta là m như sau:


print('*'*15)
Xuấ t dấ u * 15 lầ n ***************

Trang 31
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
2.5. Các kiểu xuất dữ liệu

Dù ng hà m format để xuấ t dữ liệu:

Trang 32
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
2.5. Các kiểu xuất dữ liệu

Muố n xuấ t că n phả i ta có thể là m như sau:


print('-'*15)
print('{0:>2} {1:>11}'.format('STT', 'Giá trị'))
print('-'*15)
print('{0:>2} {1:>11}'.format(1, 10**10))
print('{0:>2} {1:>11}'.format(2, 10**9))
print('{0:>2} {1:>11}'.format(3, 10**8))
print('{0:>2} {1:>11}'.format(4, 10**7))
print('{0:>2} {1:>11}'.format(5, 10**6))
print('{0:>2} {1:>11}'.format(6, 10**5))
print('{0:>2} {1:>11}'.format(7, 10**4))
print('{0:>2} {1:>11}'.format(8, 10**3))
print('{0:>2} {1:>11}'.format(9, 10**2))
print('{0:>2} {1:>11}'.format(10, 10**1))
print('-'*15)
Trang 33
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW Web kinh doanh 1
2.6. Các loại lỗi trong Python

Bấ t cứ ngườ i nà o lậ p trình cũ ng đều sinh ra lỗ i, tù y và o và khả và kinh


nghiệm củ a từ ng ngườ i mà gặ p cá c loạ i lỗ i khá c nhau. Có 3 loạ i lỗ i thườ ng
gặ p là :

2.6.1. Lỗ i cú phá p(Syntax Errors)


2.6.2. Lỗ i thự c thi(Run-time Exceptions)
2.6.3. Lỗ i nghiệp vụ (Logic Errors)

Python cũ ng giố ng như cá c ngô n ngữ khá c là cho phép bắ t lỗ i bằ ng khố i


lệnh try…catch

Trang 34
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW
2.6.1. Lỗ i cú phá p(Syntax Errors) Web kinh doanh 1

Lỗ i thườ ng gặ p vớ i nhữ ng Programmer mớ i bắ t đầ u họ c, viết đâ u sai đó ,


khô ng thể thô ng dịch đượ c phầ n mềm.

Trang 35
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW
2.6.2. Lỗ i thự c thi(Run-time Exceptions) Web kinh doanh 1

Thườ ng lỗ i này thô ng dịch hoà n tấ t, nhưng trong quá trình thự c thi lạ i
phá t sinh ra lỗ i. Cá c lỗ i thườ ng gặ p như chia cho 0, ép kiểu sai, đọ c file lỗ i,
kết nố i mạ ng lỗ i….

Trang 36
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW
2.6.3. Lỗ i nghiệp vụ (Logic Errors) Web kinh doanh 1

Lỗ i này rấ t nghiêm trọ ng, thô ng dịch và chạy ngon là nh. Nhưng kết qua sai
vớ i yêu cầ u nghiệp củ a Khá ch hà ngĐứ t bó ng đờ i Cô Lự u
Cá c lỗ i này thườ ng rấ t hiếm khi xảy ra, nhưng khi xảy ra rồ i thì rấ t khó tìm
thấy, và thấy rồ i cũ ng thườ ng khó fix bug.

Trang 37
WORKING HARD & SMART TODAY FOR A BETTER TOMORROW
2.6.4. Bắ t lỗ i Web kinh doanh 1

Python hỗ trợ try…catch để bắ t lỗ i Runtime, giú p bá o rõ loạ i lỗ i chương


trình đang gặ p và vẫ n tiếp tụ c hoạ t độ ng khi gặ p lỗ i. Có rấ t nhiều trườ ng
hợ p sử dụ ng, bà i họ c trình bày 1 cá ch tổ ng quá t nhấ t:

Trang 38

You might also like