Cộng đồng chia sẻ tri thức Lib24.vn

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

d41d8cd98f00b204e9800998ecf8427e
Gửi bởi: Phạm Thọ Thái Dương 20 tháng 11 2020 lúc 10:27:51 | Được cập nhật: 19 tháng 4 lúc 9:12:57 Kiểu file: DOC | Lượt xem: 374 | Lượt Download: 1 | File size: 0.40704 Mb

Nội dung tài liệu

Tải xuống
Link tài liệu:
Tải xuống

Các tài liệu liên quan


Có thể bạn quan tâm


Thông tin tài liệu

1|11

KHÓA PYTHON CƠ BẢN
HOWKTEAM.COM

Bài 6: KIỂU DỮ LIỆU
SỐ TRONG PYTHON
Xem bài học trên website để ủng hộ Kteam: Kiểu dữ liệu số trong Python.
Mọi vấn đề về lỗi website làm ảnh hưởng đến bạn hoặc thắc mắc, mong muốn khóa
học mới, nhằm hỗ trợ cải thiện Website. Các bạn vui lòng phản hồi đến Fanpage
How Kteam nhé!

Dẫn nhập
Trong các bài trước, bạn đã làm quen với khái niệm BIẾN TRONG
PYTHON.
Ở bài này Kteam sẽ đề cập đến các bạn KIỂU DỮ LIỆU SỐ. Một
trong những kiểu dữ liệu cực kì quan trọng của Python!

Nội dung chính
Để đọc hiểu bài này tốt nhất bạn cần:
 Cài đặt sẵn MÔI TRƯỜNG PHÁT TRIỂN CỦA PYTHON.
 Xem qua bài CÁCH CHẠY CHƯƠNG TRÌNH PYTHON.
 Nắm CÁCH GHI CHÚ và BIẾN TRONG PYTHON.
Trong bài học này, chúng ta sẽ cùng tìm hiểu các vấn đề:





Số là gì?
Một số kiểu dữ liệu số cơ bản trong Python.
Các toán tử cơ bản với kiểu dữ liệu số trong Python.
Thư viện math trong Python.

Copyright © Howkteam.com

2|11

KHÓA PYTHON CƠ BẢN
HOWKTEAM.COM

Số là gì?
Con số ở khắp nơi trong cuộc sống chúng ta. Bất cứ lúc nào bạn
cũng có thể bắt gặp con số trong cuộc sống.
Tháng này có 30 hay 31 ngày? Mai đi chợ bó rau muốn 3000 đồng
hay là 3500 đồng? Bài thi hôm bữa được 9,1 điểm hay là 1,9? Cái
bánh này mình ăn ½ hay là ¾. Có thể thấy, số không còn là điều gì
xa lạ với bạn. Và đương nhiên điều này tương tự với “con trăn”
Python.
Trong Python cũng hỗ trợ rất nhiều kiểu dữ liệu số. Một số kiểu dữ
liệu cơ bản như số nguyên (integers), số thực (floating-point), phân
số (fraction), số phức (complex). Và những kiểu dữ liệu này sẽ được
Kteam giới thiệu cho các bạn ngay sau đây!

Một số kiểu dữ liệu số cơ bản
trong Python
Số nguyên
Số nguyên bao gồm các số nguyên dương (1, 2, 3, ..), các số
nguyên âm (-1, - 2, -3) và số 0. Trong Python, kiểu dữ liệu số
nguyên cũng không có gì khác biệt.
Ví dụ: Gán giá trị cho một biến a là 4 và xuất ra kiểu dữ liệu của a.
>
a = 4 # gán giá giá trị của biến a là số 4, là một số nguyên
>
a
4
>
type(a) # số nguyên thuộc lớp ‘int’ trong
Python

Copyright © Howkteam.com

3|11

KHÓA PYTHON CƠ BẢN
HOWKTEAM.COM

Một điểm đáng chú ý trong Python 3.X đó là kiểu dữ liệu số nguyên
là vô hạn. Điều này cho phép bạn tính toán với những số cực kì lớn,
điều mà đa số các ngôn ngữ lập trình khác KHÔNG THỂ.

Số thực
Về kiểu dữ liệu số thực, thì đây là tập hợp các số nguyên và số
thập phân 1, 1.4, -123, 69.96,…
Ví dụ: Gán giá trị của biến f là 1.23 và xuất ra kiểu dữ liệu của f.
>
f = 1.23 # gán giá trị của biến f là số 1.23, là một số thực
>
f
1.23
>>> type(f) # số thực trong Python thuộc lớp
‘float’
>
q = 1.0 # đây là số thực, không phải số nguyên
>
q
1.0
>
type(q)


Lưu ý: Thường khi chúng ta viết số thực, phần nguyên và phần
thập phân được tách nhau bởi dấu phẩy ( , ). Thế nhưng trong
Python, dấu phẩy ( , ) này được thay thế thành dấu chấm ( . )
Số thực trong Python có độ chính xác xấp xỉ 15 chữ số phần
thập phân. Ví dụ: Số thực 10/3
>
10 / 3 # đây là một số vô hạn tuần hoàn 3.3333333333333333333..
3.3333333333333335

Copyright © Howkteam.com

KHÓA PYTHON CƠ BẢN
HOWKTEAM.COM

4|11

Nếu bạn muốn có kết quả được chính xác cao hơn, bạn nên sử dụng
Decimal
>
from decimal import * # lấy toàn bộ nội dung của thư viện Decimal
>
getcontext().prec = 30 # lấy tối đa 30 chữ số phần nguyên và
phần thập phân Decimal
>
Decimal(10) / Decimal(3)
Decimal(‘3. 33333333333333333333333333333’)
>
Decimal(100) / Decimal(3)
Decimal(’33.3333333333333333333333333333’)
>>> type(Decimal(5)) # các số Decimal thuộc lớp
Decimal

Tuy Decimal có độ chính xác cao hơn so với float tuy nhiên nó lại
khá rườm rà so với float. Do đó, hãy cân bằng sự tiện lợi và chính
xác để chọn kiểu dữ liệu phù hợp.

Phân số
Chúng ta biết đến phân số qua sách giáo khoa toán lớp 3. Phân số
gồm hai phần là tử số và mẫu số.

Tạo một phân số
Để tạo phân số trong python, ta sử dụng hàm Fraction với cú pháp
sau
Fraction(, )

Copyright © Howkteam.com

5|11

KHÓA PYTHON CƠ BẢN
HOWKTEAM.COM

Ví dụ: Nhập phân số ¼, 3/9, ¾,
>
from fractions import * # lấy toàn bộ nội dung của thư viện decimal
>
Fraction(1, 4) # phân số với tử số là 1, mẫu số là 4.
Fraction(1, 4)
>
Fraction(3, 9) # phân số sẽ được tối giản nếu có thể
Fraction(1, 3)
>
type(Fraction(3, 4)) # các phân số thuộc lớp Fraction


Số phức
Nếu bạn chưa biết đến Số Phức, Kteam khuyên bạn nên bỏ qua
phần này.
Số phức gồm 2 thành phần :
+ j
Trong đó
là số thực
 j là đơn vị ảo trong toán học với j2 = -1

Tạo một số phức
Để tạo một số phức, bạn có thể sử dụng hàm complex với cú pháp
sau:
complex(,)

Gán giá trị số phức cho một biến
= + j

Copyright © Howkteam.com

6|11

KHÓA PYTHON CƠ BẢN
HOWKTEAM.COM

Xuất ra từng phần của một biến số phức
Để xuất ra phần thực, ta sử dụng cú pháp:
.real
Để xuất ra phần ảo của biến số phức, ta dùng cú pháp:
.imag

Ví dụ: Nhập một số số phức sau
1. 1 + 3j
2. Gán biến c có giá trị 2+1j. Xuất ra phần thực và phần ảo của
biến c.
3. 4 +j (sẽ có lỗi vì kiểu dữ liệu nhập vào không đúng).
4. Tạo số phức có phần thực là 3, phần ảo là 1.
5. Tạo số phức chỉ có phần thực là 2.
6. Xuất ra kiểu dữ liệu của số 3+1j.
>
3j + 1 # phần thực là 1, phần ảo là 3
(1 + 3j)
>
c = 2 + 1j # gán giá trị cho biến c là một số phức với phần
thực là 2 còn phần ảo là 1
>
c
(2 + 1j)
>
4 + j # phần ảo là 1, tuy vậy chúng ta không được phép bỏ số 1 như
trong
toán
Traceback (most recent call
last): File "", line 1, in

NameError: name 'j' is not defined
>
4 + 1j
(4 + 1j)
>
c.imag # lấy phần ảo của số phức 2 + 1j mà ta đã gán cho biến c
1.0
>
c.real # lấy phần thực
2.0
Copyright © Howkteam.com

7|11

KHÓA PYTHON CƠ BẢN
HOWKTEAM.COM

>
complex(3, 1) # dùng hàm complex để tạo một số phức với phần
thực là 3, ảo là 1
(3 + 1j)
>>> complex(2) # chỉ có phần thực, phần ảo được mặc
định là 0 (2 + 0j)
>
type(3 + 1j) # các số phức thuộc lớp complex


Các toán tử cơ bản với kiểu dữ
liệu số trong Python
Biểu thức chính là một thực thể toán học. Nói cách khác, nó là
một sự kết hợp giữa 2 thành phần:



Toán hạng: có thể là một hằng số, biến số (X , Y)
Toán tử: xác định cách thức làm việc giữa các toán hạng
(+,-,*,/)

Dưới đây là một số biểu thức toán học của kiểu dữ liệu số trong
Python

Copyright © Howkteam.com

8|11

KHÓA PYTHON CƠ BẢN
HOWKTEAM.COM

Ví dụ: Cho 2 biến a,b lần lượt bằng 8 và 3. Thực hiện các biểu
thức toán học với a,b.
>
a=8
>
b=3
>
a + b # tương đương 8 cộng 3
11
>
a – b # tương đương 8 trừ 3
5
>
a * b # tương đương 8 nhân 3
24
>
a / b # tương đương 8 chia 3
2.6666666666666665
>
a // b # tương đương với 8 chia nguyên 3
2
>
a % b # tương đương với 8 chia dư 3
2
>
a ** b # tương đương 8 mũ 3
512

Copyright © Howkteam.com

9|11

KHÓA PYTHON CƠ BẢN
HOWKTEAM.COM

Thư viện math trong Python
Thư viện math trong Python hỗ trợ rất nhiều hàm tính toán liên quan
đến toán học.
Để sử dụng một thư viện nào đó, ta dùng lệnh:
import
Muốn sử dụng một hàm nào đó của thư viện, ta sử dụng cú pháp:
.
Dưới đây là một số hàm thường được dùng trong việc tính toán cơ
bản.

Ví dụ:
>
import math # lấy nội dung của thư viện math về sử dụng
>
math.trunc(3.9)
3
>>> math.fabs(-3)
Copyright © Howkteam.com

10|11

KHÓA PYTHON CƠ BẢN
HOWKTEAM.COM

3.0
>
math.sqrt(16)
4.0
>
math.gcd(6, 4)
2

Câu hỏi củng cố
1. Kiểu dữ liệu số nguyên thuộc lớp nào?
2. Sự khác nhau giữa hai biến a và b dưới đây là gì?
>
>

a=0
b = 0.0

3. Tại sao lại có sự khác nhau khi sử dụng hàm `trunc` ở thư
viện math so với toán tử `//`
>
>
-3
>
-4

import math
math.trunc(15 / -4)
15 // -4

Trong khi chúng lại có trùng kết quả ở phép tính này.
>
>
3
>
3

import math
math.trunc(15 / 4)
15//4

Đáp án của phần này sẽ được trình bày ở bài tiếp theo. Tuy
nhiên, Kteam khuyến khích bạn tự trả lời các câu hỏi để củng cố
kiến thức cũng như thực hành một cách tốt nhất!
Copyright © Howkteam.com

KHÓA PYTHON CƠ BẢN
HOWKTEAM.COM

11|11

Kết luận
Bài viết này đã giới thiệu cho các bạn một số KIỂU DỮ LIỆU SỐ trong
Python.
Ở bài sau, Kteam sẽ nói về KIỂU DỮ LIỆU CHUỖI TRONG PYTHON một kiểu dữ liệu cũng cực kì quan trọng.
Cảm ơn bạn đã theo dõi bài viết. Hãy để lại bình luận hoặc góp ý
của mình để phát triển bài viết tốt hơn. Đừng quên “Luyện tập –
Thử thách – Không ngại khó”.

Copyright © Howkteam.com