Bạn không cần phải là một chuyên gia toán học để lập trình tốt. Sự thật là, ít lập trình viên cần biết nhiều hơn đại số cơ bản. Tất nhiên, bạn cần biết bao nhiêu môn toán tùy thuộc vào ứng dụng mà bạn đang làm việc. Nói chung, trình độ toán học cần thiết để trở thành một lập trình viên thấp hơn bạn mong đợi. Mặc dù toán học và lập trình máy tính không tương quan như một số người có thể tin, nhưng các con số là một phần không thể thiếu của bất kỳ ngôn ngữ lập trình nào và Python cũng không ngoại lệ
Trong hướng dẫn này, bạn sẽ học cách
- Tạo số nguyên và số dấu phẩy động
- Làm tròn số đến một số chữ số thập phân cho trước
- Định dạng và hiển thị số trong chuỗi
Bắt đầu nào
Ghi chú. Hướng dẫn này được điều chỉnh từ chương “Số và Toán” trong Python Basics. Giới thiệu thực tế về Python 3. Nếu bạn thích một khóa học video, thì hãy xem Python Basics. Số và Toán
Cuốn sách sử dụng trình soạn thảo IDLE tích hợp sẵn của Python để tạo và chỉnh sửa các tệp Python cũng như tương tác với trình bao Python, vì vậy bạn sẽ thấy các tham chiếu đến các công cụ sửa lỗi tích hợp sẵn của IDLE trong suốt hướng dẫn này. Tuy nhiên, bạn sẽ không gặp vấn đề gì khi chạy mã ví dụ từ trình chỉnh sửa và môi trường bạn chọn
Tiền thưởng miễn phí. 5 Suy nghĩ về Làm chủ Python, một khóa học miễn phí dành cho các nhà phát triển Python cho bạn thấy lộ trình và tư duy mà bạn sẽ cần để đưa các kỹ năng Python của mình lên một tầm cao mới
Số nguyên và số dấu phẩy động
Python có ba kiểu dữ liệu số tích hợp. số nguyên, số dấu phẩy động và số phức. Trong phần này, bạn sẽ tìm hiểu về số nguyên và số dấu phẩy động, đây là hai loại số được sử dụng phổ biến nhất. Bạn sẽ học về số phức trong
Loại bỏ các quảng cáosố nguyên
Một số nguyên là một số nguyên không có chữ số thập phân. Ví dụ,
>>> 200000000000000000.0
2e+17
4 là một số nguyên, nhưng >>> 200000000000000000.0
2e+17
5 thì không. Tên của kiểu dữ liệu số nguyên là >>> 200000000000000000.0
2e+17
6, bạn có thể thấy tên này với >>> 200000000000000000.0
2e+17
7>>>
>>> type[1]
Bạn có thể tạo một số nguyên bằng cách nhập số mong muốn. Chẳng hạn, phần sau gán số nguyên
>>> 200000000000000000.0
2e+17
8 cho biến >>> 200000000000000000.0
2e+17
9>>>
>>> num = 25
Khi bạn tạo một số nguyên như thế này, giá trị
>>> 200000000000000000.0
2e+17
8 được gọi là số nguyên theo nghĩa đen vì số nguyên được nhập vào mã theo nghĩa đenBạn có thể đã quen thuộc với cách chuyển đổi một chuỗi chứa số nguyên thành số bằng cách sử dụng
>>> 1e-4
0.0001
1. Ví dụ: phần sau chuyển đổi chuỗi >>> 1e-4
0.0001
2 thành số nguyên >>> 200000000000000000.0
2e+17
8>>>
>>> 200000000000000000.0
2e+17
2>>> 1e-4
0.0001
4 không phải là một số nguyên vì giá trị số nguyên được tạo từ một chuỗiKhi bạn viết các số lớn bằng tay, bạn thường nhóm các chữ số thành nhóm ba số được phân tách bằng dấu phẩy hoặc dấu thập phân. Số 1.000.000 dễ đọc hơn 1000000 rất nhiều
Trong Python, bạn không thể sử dụng dấu phẩy để nhóm các chữ số theo số nguyên, nhưng bạn có thể sử dụng dấu gạch dưới [
>>> 1e-4
0.0001
5]. Cả hai cách sau đều là những cách hợp lệ để biểu diễn số một triệu dưới dạng một số nguyên>>>
>>> 200000000000000000.0
2e+17
5Không có giới hạn về độ lớn của một số nguyên, điều này có thể gây ngạc nhiên khi máy tính có bộ nhớ hữu hạn. Hãy thử nhập số lớn nhất mà bạn có thể nghĩ đến vào cửa sổ tương tác của IDLE. Python có thể xử lý nó mà không gặp vấn đề gì
Số dấu phẩy động
Số dấu phẩy động, hay viết tắt là float, là một số có một chữ số thập phân.
>>> 200000000000000000.0
2e+17
5 là một số dấu phẩy động, cũng như >>> 1e-4
0.0001
7. Tên của kiểu dữ liệu dấu chấm động là >>> 1e-4
0.0001
8>>>
>>> 200000000000000000.0
2e+17
9Giống như số nguyên, số float có thể được tạo từ các ký tự dấu phẩy động hoặc bằng cách chuyển đổi một chuỗi thành số float với
>>> 1e-4
0.0001
9>>>
>>> 200000000000000000.0
2e+17
1Có ba cách để biểu diễn một dấu chấm động theo nghĩa đen. Mỗi điều sau đây tạo ra một chữ số dấu phẩy động với giá trị một triệu
>>>
>>> 200000000000000000.0
2e+17
2Hai cách đầu tương tự như hai kỹ thuật tạo số nguyên. Cách tiếp cận thứ ba sử dụng ký hiệu E để tạo một chữ nổi
Ghi chú. Ký hiệu E là viết tắt của ký hiệu hàm mũ. Bạn có thể đã thấy ký hiệu này được máy tính sử dụng để biểu thị các số quá lớn để vừa trên màn hình
Để viết một chữ float trong ký hiệu E, hãy nhập một số theo sau là chữ cái
>>> 200000000000000000.0
2e+17
30 và sau đó là một số khác. Python lấy số ở bên trái của >>> 200000000000000000.0
2e+17
30 và nhân nó với >>> 200000000000000000.0
2e+17
32 được nâng lên thành lũy thừa của số sau >>> 200000000000000000.0
2e+17
30. Vì vậy, >>> 200000000000000000.0
2e+17
34 tương đương với 1×10⁶Python cũng sử dụng ký hiệu E để hiển thị số dấu phẩy động lớn
>>>
>>> 200000000000000000.0
2e+17
Phao
>>> 200000000000000000.0
2e+17
35 được hiển thị dưới dạng >>> 200000000000000000.0
2e+17
36. Dấu ________ 237 cho biết số mũ ________ 238 là số dương. Bạn cũng có thể sử dụng số âm làm số mũ>>>
>>> 1e-4
0.0001
Chữ
>>> 200000000000000000.0
2e+17
39 được hiểu là >>> 200000000000000000.0
2e+17
32 được nâng lên lũy thừa >>> num = 25
01, tức là 1/10000 hoặc >>> num = 25
02Không giống như số nguyên, số float có kích thước tối đa. Số dấu phẩy động tối đa phụ thuộc vào hệ thống của bạn, nhưng thứ gì đó như
>>> num = 25
03 phải vượt quá khả năng của hầu hết các máy. >>> num = 25
03 là 2×10⁴⁰⁰, cao hơn nhiều so vớiKhi bạn đạt đến số dấu phẩy động tối đa, Python sẽ trả về một giá trị float đặc biệt,
>>> num = 25
05>>>
>>> 200000000000000000.0
2e+17
3>>> num = 25
05 là viết tắt của vô cực và điều đó chỉ có nghĩa là số bạn đã cố tạo vượt quá giá trị dấu phẩy động tối đa được phép trên máy tính của bạn. Loại của >>> num = 25
05 vẫn là >>> 1e-4
0.0001
8>>>
>>> num = 25
0Python cũng sử dụng
>>> num = 25
09, viết tắt của âm vô cực và biểu thị số dấu phẩy động âm vượt quá số dấu phẩy động tối thiểu được phép trên máy tính của bạn>>>
>>> num = 25
1Bạn có thể sẽ không gặp
>>> num = 25
05 và >>> num = 25
09 thường xuyên với tư cách là một lập trình viên trừ khi bạn thường xuyên làm việc với số lượng cực lớnKiểm tra việc hiểu của bạn
Mở rộng khối bên dưới để kiểm tra sự hiểu biết của bạn
Tập thể dục. Hai cách để viết số nguyênHiện/Ẩn
Viết chương trình tạo hai biến,
>>> num = 25
12 và >>> num = 25
13. Cả >>> num = 25
12 và >>> num = 25
13 phải được gán số nguyên bằng chữ >>> num = 25
16, một chữ được viết có dấu gạch dưới và một chữ không có. In >>> num = 25
12 và >>> num = 25
13 trên hai dòng riêng biệtBạn có thể mở rộng khối bên dưới để xem giải pháp
Giải pháp. Hai cách để viết số nguyênHiện/Ẩn
Đầu tiên, gán giá trị
>>> num = 25
16 cho >>> num = 25
12 mà không có bất kỳ dấu gạch dưới nào>>> num = 25
2Tiếp theo, trên một dòng mới, gán giá trị
>>> num = 25
21 cho biến >>> num = 25
13>>> num = 25
3In cả hai biến trên các dòng riêng biệt bằng cách chuyển từng biến sang các cuộc gọi riêng biệt của
>>> num = 25
23>>> num = 25
4Ở đầu ra, bạn có thể thấy rằng cả hai số đều giống nhau
>>> num = 25
5Mặc dù cả hai biến đều được gán giá trị
>>> num = 25
16, nhưng việc viết giá trị bằng cách sử dụng dấu gạch dưới để nhóm các chữ số giúp con người dễ dàng nhanh chóng tìm ra số đó là gì. Không còn phải nheo mắt nhìn vào màn hình và cố gắng đếm số khôngKhi bạn đã sẵn sàng, bạn có thể chuyển sang phần tiếp theo
Loại bỏ các quảng cáoToán tử số học và biểu thức
Trong phần này, bạn sẽ học cách thực hiện các phép tính số học cơ bản, chẳng hạn như cộng, trừ, nhân và chia với các số trong Python. Đồng thời, bạn sẽ học một số quy ước để viết các biểu thức toán học trong mã
Phép cộng
Phép cộng được thực hiện với toán tử
>>> 200000000000000000.0
2e+17
37>>>
>>> num = 25
6Hai số ở hai bên của toán tử
>>> 200000000000000000.0
2e+17
37 được gọi là toán hạng. Trong ví dụ trên, cả hai toán hạng đều là số nguyên, nhưng toán hạng không cần phải cùng kiểuBạn có thể thêm một
>>> 200000000000000000.0
2e+17
6 vào một >>> 1e-4
0.0001
8 mà không gặp vấn đề gì>>>
>>> num = 25
7Lưu ý rằng kết quả của
>>> num = 25
29 là >>> num = 25
30, là một >>> 1e-4
0.0001
8. Bất cứ khi nào một số >>> 1e-4
0.0001
8 được thêm vào một số, kết quả sẽ là một số khác. Cộng hai số nguyên với nhau luôn cho kết quả là >>> 200000000000000000.0
2e+17
6Ghi chú. tách cả hai toán hạng khỏi một toán tử bằng một khoảng trắng
Python có thể đánh giá tốt
>>> num = 25
35, nhưng >>> num = 25
36 là định dạng ưa thích hơn vì nó thường dễ đọc hơn. Quy tắc ngón tay cái này áp dụng cho tất cả các toán tử trong phần nàyphép trừ
Để trừ hai số, chỉ cần đặt một toán tử
>>> num = 25
37 giữa chúng>>>
>>> num = 25
8Cũng giống như phép cộng hai số nguyên, phép trừ hai số nguyên luôn cho kết quả là
>>> 200000000000000000.0
2e+17
6. Bất cứ khi nào một trong các toán hạng là một >>> 1e-4
0.0001
8, thì kết quả cũng là một >>> 1e-4
0.0001
8Toán tử
>>> num = 25
37 cũng được sử dụng để biểu thị số âm>>>
>>> num = 25
9Bạn có thể trừ một số âm từ một số khác, nhưng như bạn có thể thấy bên dưới, điều này đôi khi có vẻ khó hiểu
>>>
>>> 200000000000000000.0
2e+17
20Trong bốn ví dụ trên, ví dụ đầu tiên tuân thủ PEP 8 nhất. Như đã nói, bạn có thể bao quanh
>>> num = 25
42 bằng dấu ngoặc đơn để làm rõ hơn rằng >>> num = 25
37 thứ hai đang sửa đổi >>> num = 25
44>>>
>>> 200000000000000000.0
2e+17
21Sử dụng dấu ngoặc đơn là một ý kiến hay vì nó làm cho mã của bạn rõ ràng hơn. Máy tính thực thi mã, nhưng con người đọc mã. Bất cứ điều gì bạn có thể làm để làm cho mã của bạn dễ đọc và dễ hiểu hơn đều là một điều tốt
Loại bỏ các quảng cáoPhép nhân
Để nhân hai số, hãy sử dụng toán tử
>>> num = 25
45>>>
>>> 200000000000000000.0
2e+17
22Loại số bạn nhận được từ phép nhân tuân theo các quy tắc giống như phép cộng và phép trừ. Nhân hai số nguyên cho kết quả là
>>> 200000000000000000.0
2e+17
6 và nhân một số với số >>> 1e-4
0.0001
8 sẽ cho kết quả là >>> 1e-4
0.0001
8Phân công
Toán tử
>>> num = 25
49 dùng để chia hai số>>>
>>> 200000000000000000.0
2e+17
23Không giống như phép cộng, phép trừ và phép nhân, phép chia với toán tử
>>> num = 25
49 luôn trả về một kết quả >>> 1e-4
0.0001
8. Nếu bạn muốn chắc chắn rằng bạn nhận được một số nguyên sau khi chia hai số, bạn có thể sử dụng >>> 1e-4
0.0001
1 để chuyển đổi kết quả>>>
>>> 200000000000000000.0
2e+17
24Hãy nhớ rằng
>>> 1e-4
0.0001
1 loại bỏ bất kỳ phần phân số nào của số>>>
>>> 200000000000000000.0
2e+17
25>>> num = 25
54 trả về số dấu phẩy động >>> num = 25
55 và >>> num = 25
56 trả về số nguyên >>> num = 25
57 với >>> num = 25
58 đã bị xóaphép chia số nguyên
Nếu việc viết
>>> num = 25
59 có vẻ hơi dài dòng đối với bạn, thì Python cung cấp một toán tử chia thứ hai được gọi là toán tử chia số nguyên [>>> num = 25
60], còn được gọi là toán tử chia sàn>>>
>>> 200000000000000000.0
2e+17
26Toán tử
>>> num = 25
60 trước tiên chia số bên trái cho số bên phải rồi làm tròn xuống một số nguyên. Điều này có thể không mang lại giá trị mà bạn mong đợi khi một trong các số là số âmVí dụ:
>>> num = 25
62 trả về >>> num = 25
63. Đầu tiên, >>> num = 25
42 được chia cho >>> num = 25
57 để có được >>> num = 25
66. Sau đó, >>> num = 25
66 được làm tròn xuống >>> num = 25
63. Mặt khác, >>> num = 25
69 trả về >>> 200000000000000000.0
2e+17
4 vì cả hai số đều dươngVí dụ trên cũng minh họa rằng
>>> num = 25
60 trả về một số dấu phẩy động khi một trong các toán hạng là một >>> 1e-4
0.0001
8. Đây là lý do tại sao >>> num = 25
73 trả về số nguyên >>> num = 25
44 và >>> num = 25
75 trả về >>> 1e-4
0.0001
8 >>> num = 25
77Hãy xem điều gì sẽ xảy ra khi bạn cố gắng chia một số cho
>>> num = 25
78>>>
>>> 200000000000000000.0
2e+17
27Python cung cấp cho bạn một
>>> num = 25
79, cho bạn biết rằng bạn vừa cố gắng phá vỡ một quy tắc cơ bản của vũ trụLoại bỏ các quảng cáosố mũ
Bạn có thể nâng một số lên lũy thừa bằng cách sử dụng toán tử
>>> num = 25
80>>>
>>> 200000000000000000.0
2e+17
28Số mũ không nhất thiết phải là số nguyên. Chúng cũng có thể là phao
>>>
>>> 200000000000000000.0
2e+17
29Nâng một số lên lũy thừa của
>>> num = 25
81 cũng giống như lấy căn bậc hai, nhưng lưu ý rằng mặc dù căn bậc hai của ________ 782 là một số nguyên, nhưng Python trả về ________ 98 ________ 730Đối với toán hạng dương, toán tử
>>> num = 25
80 trả về giá trị >>> 200000000000000000.0
2e+17
6 nếu cả hai toán hạng đều là số nguyên và giá trị >>> 1e-4
0.0001
8 nếu bất kỳ một trong các toán hạng là số dấu phẩy độngBạn cũng có thể nâng số lên lũy thừa âm
>>>
>>> 200000000000000000.0
2e+17
50Nâng một số lên lũy thừa âm cũng giống như chia
>>> 200000000000000000.0
2e+17
4 cho số đã nâng lên lũy thừa dương. Vì vậy, >>> num = 25
89 giống với >>> num = 25
90, giống như >>> num = 25
91 hoặc >>> num = 25
81. Tương tự, >>> num = 25
93 giống với >>> num = 25
94, giống như >>> num = 25
95 hoặc >>> num = 25
96Toán tử mô đun
Toán tử
>>> num = 25
97, hoặc mô đun, trả về phần còn lại của phép chia toán hạng bên trái cho toán hạng bên phải>>>
>>> 200000000000000000.0
2e+17
51>>> num = 25
44 chia ______ 799 một lần với số dư là ________ 757, vì vậy ________ 1201 là ________ 757. Tương tự, >>> 200000000000000000.0
2e+17
203 chia >>> 200000000000000000.0
2e+17
204 hai lần với số dư là >>> 200000000000000000.0
2e+17
205. Trong ví dụ trước, >>> 200000000000000000.0
2e+17
206 chia hết cho >>> 200000000000000000.0
2e+17
207, vì vậy >>> 200000000000000000.0
2e+17
208 là >>> num = 25
78. Bất cứ khi nào số bên trái của >>> num = 25
97 chia hết cho số bên phải, kết quả là >>> num = 25
78Một trong những cách sử dụng phổ biến nhất của
>>> num = 25
97 là xác định xem một số có chia hết cho số khác không. Ví dụ: một số >>> 200000000000000000.0
2e+17
213 là số chẵn khi và chỉ khi >>> 200000000000000000.0
2e+17
214 là >>> num = 25
78. Bạn nghĩ gì >>> 200000000000000000.0
2e+17
216 trả về? >>>
>>> 200000000000000000.0
2e+17
52Điều này hợp lý vì
>>> 200000000000000000.0
2e+17
216 cho số dư của phép chia >>> 200000000000000000.0
2e+17
4 cho >>> num = 25
78. Nhưng bạn không thể chia >>> 200000000000000000.0
2e+17
4 cho >>> num = 25
78, vì vậy Python tăng >>> num = 25
79Ghi chú. Khi bạn làm việc trong cửa sổ tương tác của IDLE, các lỗi như
>>> num = 25
79 không gây ra nhiều vấn đề. Lỗi được hiển thị và một lời nhắc mới bật lên, cho phép bạn tiếp tục viết mãTuy nhiên, khi Python gặp lỗi trong khi chạy tập lệnh, quá trình thực thi sẽ dừng lại. Nói cách khác, chương trình bị treo. Trong chương 8 của Kiến thức cơ bản về Python, bạn sẽ học cách xử lý lỗi để chương trình của bạn không gặp sự cố bất ngờ
Mọi thứ trở nên phức tạp hơn một chút khi bạn sử dụng toán tử
>>> num = 25
97 với các số âm>>>
>>> 200000000000000000.0
2e+17
53Mặc dù thoạt nhìn có thể gây sốc, nhưng những kết quả này là sản phẩm của một hành vi được xác định rõ ràng trong Python. Để tính số dư
>>> 200000000000000000.0
2e+17
225 của phép chia một số >>> 200000000000000000.0
2e+17
226 cho một số >>> 200000000000000000.0
2e+17
227, Python sử dụng phương trình >>> 200000000000000000.0
2e+17
228Ví dụ, để tìm
>>> 200000000000000000.0
2e+17
229, đầu tiên Python tìm >>> 200000000000000000.0
2e+17
230. Vì >>> 200000000000000000.0
2e+17
231 là khoảng >>> 200000000000000000.0
2e+17
232, điều đó có nghĩa là >>> 200000000000000000.0
2e+17
233 là >>> num = 25
63. Bây giờ Python nhân số đó với >>> num = 25
42 để có được >>> 200000000000000000.0
2e+17
205. Cuối cùng, Python trừ >>> 200000000000000000.0
2e+17
205 từ >>> num = 25
99 để có được >>> 200000000000000000.0
2e+17
239Loại bỏ các quảng cáobiểu thức số học
Bạn có thể kết hợp các toán tử để tạo thành các biểu thức phức tạp. Một biểu thức là sự kết hợp của các số, toán tử và dấu ngoặc đơn mà Python có thể tính toán hoặc đánh giá để trả về một giá trị
Dưới đây là một số ví dụ về các biểu thức số học
>>>
>>> 200000000000000000.0
2e+17
54Các quy tắc đánh giá các biểu thức giống như trong số học hàng ngày. Ở trường, bạn có thể đã học các quy tắc này dưới tên gọi thứ tự các phép toán
Tất cả các toán tử
>>> num = 25
45, >>> num = 25
49, >>> num = 25
60 và >>> num = 25
97 đều có mức độ ưu tiên hoặc mức độ ưu tiên như nhau trong một biểu thức và mỗi toán tử này có mức độ ưu tiên cao hơn các toán tử >>> 200000000000000000.0
2e+17
37 và >>> num = 25
37. Đây là lý do tại sao >>> 200000000000000000.0
2e+17
246 trả về >>> num = 25
99 chứ không phải >>> 200000000000000000.0
2e+17
248. >>> 200000000000000000.0
2e+17
249 được đánh giá trước, bởi vì >>> num = 25
45 có độ ưu tiên cao hơn toán tử >>> num = 25
37Bạn có thể nhận thấy rằng các biểu thức trong ví dụ trước không tuân theo quy tắc đặt khoảng trắng ở hai bên của tất cả các toán tử. PEP 8 nói như sau về khoảng trắng trong các biểu thức phức tạp
Nếu các toán tử có mức độ ưu tiên khác nhau được sử dụng, hãy xem xét thêm khoảng trắng xung quanh các toán tử có [các] mức độ ưu tiên thấp nhất. Sử dụng phán đoán của riêng bạn; . []
Một cách thực hành tốt khác là sử dụng dấu ngoặc đơn để chỉ ra thứ tự thực hiện các thao tác, ngay cả khi dấu ngoặc đơn không cần thiết. Chẳng hạn,
>>> 200000000000000000.0
2e+17
252 có khả năng rõ ràng hơn 2*3 - 1Làm cho Python nói dối bạn
Bạn nghĩ
>>> 200000000000000000.0
2e+17
253 là gì? . Hãy thử điều này trong cửa sổ tương tác>>>
>>> 200000000000000000.0
2e+17
55Đó cũng là. . . gần đúng. Cái quái gì đang xảy ra thế này?
Không, nó không phải là một lỗi. Đó là lỗi biểu diễn dấu phẩy động và không liên quan gì đến Python. Nó liên quan đến cách các số dấu phẩy động được lưu trữ trong bộ nhớ của máy tính
Ghi chú. Hướng dẫn này được điều chỉnh từ chương “Số và Toán” trong Python Basics. Giới thiệu thực tế về Python 3. Nếu bạn thích những gì bạn đang đọc, thì hãy nhớ xem phần còn lại của cuốn sách
Số
>>> 200000000000000000.0
2e+17
255 có thể biểu diễn dưới dạng phân số >>> 200000000000000000.0
2e+17
256. Cả số >>> 200000000000000000.0
2e+17
255 và phân số của nó >>> 200000000000000000.0
2e+17
256 đều là biểu diễn thập phân hoặc biểu diễn cơ số 10. Tuy nhiên, máy tính lưu trữ các số dấu phẩy động trong biểu diễn cơ số 2, thường được gọi là biểu diễn nhị phânKhi được biểu diễn dưới dạng nhị phân, một số điều quen thuộc nhưng có thể bất ngờ xảy ra với số thập phân
>>> 200000000000000000.0
2e+17
255. Phân số >>> 200000000000000000.0
2e+17
260 không có biểu diễn thập phân hữu hạn. Đó là, >>> 200000000000000000.0
2e+17
261 với vô số số 3 sau dấu thập phân. Điều tương tự cũng xảy ra với phân số >>> 200000000000000000.0
2e+17
256 ở dạng nhị phânBiểu diễn nhị phân của
>>> 200000000000000000.0
2e+17
256 là phân số lặp lại vô tận sau đây>>> 200000000000000000.0
2e+17
56Máy tính có bộ nhớ hữu hạn, vì vậy số
>>> 200000000000000000.0
2e+17
255 phải được lưu trữ dưới dạng gần đúng chứ không phải giá trị thực của nó. Giá trị gần đúng được lưu trữ cao hơn một chút so với giá trị thực tế và trông như thế này>>> 200000000000000000.0
2e+17
57Tuy nhiên, bạn có thể nhận thấy rằng khi được yêu cầu in
>>> 200000000000000000.0
2e+17
255, Python sẽ in >>> 200000000000000000.0
2e+17
255 chứ không phải giá trị gần đúng ở trên>>>
>>> 200000000000000000.0
2e+17
58Python không chỉ cắt bỏ các chữ số trong biểu diễn nhị phân cho
>>> 200000000000000000.0
2e+17
255. Những gì thực sự xảy ra là một chút tinh tế hơnBởi vì xấp xỉ của
>>> 200000000000000000.0
2e+17
255 ở dạng nhị phân chỉ là—một xấp xỉ—hoàn toàn có thể có nhiều hơn một số thập phân có cùng một xấp xỉ nhị phânVí dụ: cả
>>> 200000000000000000.0
2e+17
255 và >>> 200000000000000000.0
2e+17
270 đều có xấp xỉ nhị phân giống nhau. Python in ra số thập phân ngắn nhất chia sẻ xấp xỉĐiều này giải thích tại sao, trong ví dụ đầu tiên của phần này,
>>> 200000000000000000.0
2e+17
253 không bằng >>> 200000000000000000.0
2e+17
254. Python cộng các xấp xỉ nhị phân cho >>> 200000000000000000.0
2e+17
255 và >>> 200000000000000000.0
2e+17
274 lại với nhau, đưa ra một số không phải là xấp xỉ nhị phân cho >>> 200000000000000000.0
2e+17
254Nếu tất cả những điều này đang bắt đầu khiến đầu óc bạn quay cuồng, đừng lo lắng. Trừ khi bạn đang viết chương trình tài chính hoặc tính toán khoa học, bạn không cần phải lo lắng về sự thiếu chính xác của số học dấu phẩy động
Loại bỏ các quảng cáoHàm toán học và phương pháp số
Python có một vài hàm tích hợp mà bạn có thể sử dụng để làm việc với các con số. Trong phần này, bạn sẽ tìm hiểu về ba cách phổ biến nhất
276, để làm tròn số đến một số chữ số thập phân>>> 200000000000000000.0 2e+17
277, để lấy giá trị tuyệt đối của một số>>> 200000000000000000.0 2e+17
278, vì đã nâng một số lên một số lũy thừa>>> 200000000000000000.0 2e+17
Bạn cũng sẽ tìm hiểu về một phương pháp mà bạn có thể sử dụng với các số có dấu phẩy động để kiểm tra xem chúng có giá trị nguyên hay không
Số làm tròn với >>> 200000000000000000.0
2e+17
276
>>> 200000000000000000.0
2e+17
Bạn có thể sử dụng
>>> 200000000000000000.0
2e+17
276 để làm tròn một số thành số nguyên gần nhất>>>
>>> 200000000000000000.0
2e+17
59>>> 200000000000000000.0
2e+17
276 có một số hành vi không mong muốn khi số kết thúc bằng >>> num = 25
58>>>
>>> 200000000000000000.0
2e+17
90>>> num = 25
55 được làm tròn xuống thành >>> num = 25
57 và >>> 200000000000000000.0
2e+17
285 được làm tròn thành >>> 200000000000000000.0
2e+17
248. Hầu hết mọi người mong đợi một số kết thúc bằng >>> num = 25
58 sẽ được làm tròn lên, vì vậy hãy xem xét kỹ hơn những gì đang diễn ra ở đâyPython 3 làm tròn số theo một chiến lược gọi là. Hòa là bất kỳ số nào có chữ số cuối cùng là năm.
>>> num = 25
55 và >>> 200000000000000000.0
2e+17
289 là mối quan hệ, nhưng >>> 200000000000000000.0
2e+17
290 thì khôngKhi bạn làm tròn số hòa thành chẵn, trước tiên bạn nhìn vào chữ số một chữ số thập phân ở bên trái của chữ số cuối cùng trong hòa. Nếu chữ số đó là số chẵn thì bạn làm tròn xuống. Nếu chữ số lẻ thì làm tròn lên. Đó là lý do tại sao
>>> num = 25
55 làm tròn xuống >>> num = 25
57 và >>> 200000000000000000.0
2e+17
285 làm tròn thành >>> 200000000000000000.0
2e+17
248Ghi chú. Làm tròn số liên kết với số chẵn là chiến lược làm tròn số được IEEE [Viện Kỹ sư Điện và Điện tử] đề xuất cho các số có dấu phẩy động vì nó giúp hạn chế tác động của việc làm tròn số đối với các hoạt động liên quan đến nhiều số
IEEE duy trì một tiêu chuẩn gọi là IEEE 754 để xử lý các số dấu phẩy động trên máy tính. Nó được xuất bản vào năm 1985 và vẫn được các nhà sản xuất phần cứng sử dụng phổ biến
Bạn có thể làm tròn một số đến một số vị trí thập phân nhất định bằng cách chuyển đối số thứ hai tới
>>> 200000000000000000.0
2e+17
276>>>
>>> 200000000000000000.0
2e+17
91Số
>>> 200000000000000000.0
2e+17
296 được làm tròn đến ba chữ số thập phân để có được >>> 200000000000000000.0
2e+17
297 và số >>> 200000000000000000.0
2e+17
298 được làm tròn đến hai chữ số thập phân để có được >>> 200000000000000000.0
2e+17
299Đối số thứ hai của
>>> 200000000000000000.0
2e+17
276 phải là một số nguyên. Nếu không, thì Python sẽ tăng >>> 200000000000000000.0
2e+17
501>>>
>>> 200000000000000000.0
2e+17
92Đôi khi
>>> 200000000000000000.0
2e+17
276 không nhận được câu trả lời hoàn toàn đúng>>>
>>> 200000000000000000.0
2e+17
93>>> 200000000000000000.0
2e+17
503 hòa vì nó nằm chính xác ở giữa hai số >>> 200000000000000000.0
2e+17
504 và >>> 200000000000000000.0
2e+17
505. Vì Python làm tròn liên kết với số chẵn gần nhất, bạn sẽ mong đợi >>> 200000000000000000.0
2e+17
506 trả về >>> 200000000000000000.0
2e+17
505, nhưng thay vào đó, nó trả về >>> 200000000000000000.0
2e+17
504. Lỗi này là kết quả của lỗi biểu diễn dấu phẩy động, không phải lỗi trong >>> 200000000000000000.0
2e+17
276Xử lý các số dấu phẩy động có thể gây khó chịu, nhưng sự thất vọng này không dành riêng cho Python. Tất cả các ngôn ngữ triển khai tiêu chuẩn dấu chấm động IEEE đều có cùng một vấn đề, bao gồm C/C++, Java và JavaScript
Tuy nhiên, trong hầu hết các trường hợp, các lỗi nhỏ gặp phải với số dấu phẩy động là không đáng kể và kết quả của
>>> 200000000000000000.0
2e+17
276 hoàn toàn hữu íchLoại bỏ các quảng cáoTìm Giá Trị Tuyệt Đối Với >>> 200000000000000000.0
2e+17
277
>>> 200000000000000000.0
2e+17
Giá trị tuyệt đối của một số n chỉ là n nếu n dương và -n nếu n âm. Ví dụ: giá trị tuyệt đối của
>>> num = 25
44 là >>> num = 25
44, trong khi giá trị tuyệt đối của >>> 200000000000000000.0
2e+17
514 là >>> num = 25
99Để lấy giá trị tuyệt đối của một số trong Python, bạn sử dụng
>>>
>>> 200000000000000000.0
2e+17
94>>> 200000000000000000.0
2e+17
277 luôn trả về một số dương cùng loại với đối số của nó. Nghĩa là, giá trị tuyệt đối của một số nguyên luôn là một số nguyên dương và giá trị tuyệt đối của một số float luôn là một số float dươngNâng cao sức mạnh với >>> 200000000000000000.0
2e+17
278
>>> 200000000000000000.0
2e+17
Trước đó, bạn đã học cách nâng một số lên lũy thừa bằng cách sử dụng toán tử
>>> num = 25
80. Bạn cũng có thể sử dụng >>> 200000000000000000.0
2e+17
278 để đạt được kết quả tương tự>>> 200000000000000000.0
2e+17
278 có hai đối số. Đối số đầu tiên là cơ số hoặc số sẽ được nâng lên thành lũy thừa và đối số thứ hai là số mũ hoặc lũy thừa mà số sẽ được nâng lênVí dụ: sau đây sử dụng
>>> 200000000000000000.0
2e+17
278 để nâng >>> num = 25
57 lên số mũ >>> num = 25
44>>>
>>> 200000000000000000.0
2e+17
95Cũng giống như với
>>> num = 25
80, số mũ trong >>> 200000000000000000.0
2e+17
278 có thể âm>>>
>>> 200000000000000000.0
2e+17
96Vậy, sự khác biệt giữa
>>> num = 25
80 và >>> 200000000000000000.0
2e+17
278 là gì?Hàm
>>> 200000000000000000.0
2e+17
278 chấp nhận một đối số thứ ba tùy chọn để tính toán số đầu tiên được nâng lên lũy thừa của số thứ hai, sau đó lấy modulo đối với số thứ ba. Nói cách khác, >>> 200000000000000000.0
2e+17
530 tương đương với >>> 200000000000000000.0
2e+17
531Đây là một ví dụ trong đó
>>> 200000000000000000.0
2e+17
532, >>> 200000000000000000.0
2e+17
533 và >>> 200000000000000000.0
2e+17
534>>>
>>> 200000000000000000.0
2e+17
97Đầu tiên, _______ 757 được nâng lên lũy thừa _______ 744 để có _______ 1207. Sau đó, tính toán
>>> 200000000000000000.0
2e+17
538, đó là >>> num = 25
78 vì >>> num = 25
57 chia cho >>> 200000000000000000.0
2e+17
207 không có phần dưKiểm tra xem một Float có tích phân không
Bạn có thể quen thuộc với như
>>> 200000000000000000.0
2e+17
542, >>> 200000000000000000.0
2e+17
543 và >>> 200000000000000000.0
2e+17
544. Số nguyên và số dấu phẩy động cũng có phương thứcCác phương pháp số không được sử dụng thường xuyên, nhưng có một phương pháp có thể hữu ích. Các số dấu phẩy động có phương thức
>>> 200000000000000000.0
2e+17
545 trả về >>> 200000000000000000.0
2e+17
546 nếu số đó là số nguyên—có nghĩa là nó không có phần phân số—và nếu không thì trả về >>> 200000000000000000.0
2e+17
547>>>
>>> 200000000000000000.0
2e+17
98Một lần sử dụng cho
>>> 200000000000000000.0
2e+17
545 là để xác thực đầu vào của người dùng. Ví dụ: nếu bạn đang viết một ứng dụng đặt hàng trực tuyến cho một cửa hàng bánh pizza, thì bạn sẽ muốn kiểm tra xem số lượng bánh pizza mà khách hàng nhập vào có phải là một số nguyên không.Các hàm
>>> 200000000000000000.0
2e+17
276, >>> 200000000000000000.0
2e+17
277 và >>> 200000000000000000.0
2e+17
278 là các hàm tích hợp sẵn, nghĩa là bạn không phải nhập bất kỳ thứ gì để sử dụng chúng. Nhưng ba hàm này hầu như không làm xước bề mặt của tất cả các hàm có sẵn để làm việc với các số trong PythonĐể có thêm niềm vui toán học, hãy xem Mô-đun toán học Python. Mọi thư bạn cân biêt
Kiểm tra việc hiểu của bạn
Mở rộng khối bên dưới để kiểm tra sự hiểu biết của bạn
Tập thể dục. Làm tròn một số thành hai chữ sốHiển thị/Ẩn
Viết chương trình yêu cầu người dùng nhập vào một số và sau đó hiển thị số đó được làm tròn đến hai chữ số thập phân. Khi chạy, chương trình của bạn sẽ trông như thế này
>>> 200000000000000000.0
2e+17
99Bạn có thể mở rộng khối bên dưới để xem giải pháp
Giải pháp. Làm tròn một số thành hai chữ sốHiển thị/Ẩn
Để nhận đầu vào từ người dùng, hãy chuyển lời nhắc tới
>>> 200000000000000000.0
2e+17
552>>> 200000000000000000.0
2e+17
10Lưu ý khoảng trắng ở cuối chuỗi dấu nhắc. Điều này đảm bảo có khoảng cách giữa văn bản do người dùng nhập khi họ bắt đầu nhập và dấu hai chấm trong lời nhắc
Giá trị được trả về bởi
>>> 200000000000000000.0
2e+17
552 là một chuỗi, vì vậy bạn cần chuyển đổi nó thành số float trước khi có thể làm tròn số>>> 200000000000000000.0
2e+17
11Hãy nhớ rằng đoạn mã trên giả định rằng chuỗi
>>> 200000000000000000.0
2e+17
554 thực sự chứa một giá trị số chứ không phải bất kỳ loại văn bản nào khácGhi chú. Nếu
>>> 200000000000000000.0
2e+17
554 không chứa văn bản không phải là số, thì một >>> 200000000000000000.0
2e+17
556 sẽ được nâng lên. Kiểm tra Ngoại lệ Python. Giới thiệu thông tin về cách xử lý các loại lỗi nàyBây giờ bạn có thể sử dụng
>>> 200000000000000000.0
2e+17
276 để làm tròn giá trị đến hai chữ số thập phân>>> 200000000000000000.0
2e+17
12Hãy nhớ rằng, đối số đầu tiên của
>>> 200000000000000000.0
2e+17
276 phải là số được làm tròn. Đối số thứ hai là số chữ số thập phân để làm tròn thànhCuối cùng, bạn có thể in đầu ra bằng cách chèn ________ 1559 vào chuỗi f
>>> 200000000000000000.0
2e+17
13>>> 200000000000000000.0
2e+17
276 là một cách tuyệt vời để làm tròn giá trị, nhưng nếu bạn chỉ làm tròn giá trị để hiển thị chúng, thì bạn có thể cân nhắc sử dụng các kỹ thuật được mô tả trong phần sauKhi bạn đã sẵn sàng, bạn có thể chuyển sang phần tiếp theo
Loại bỏ các quảng cáoIn số theo phong cách
Hiển thị số cho người dùng yêu cầu chèn số vào chuỗi. Bạn có thể làm điều này với chuỗi f bằng cách bao quanh một biến được gán cho một số bằng dấu ngoặc nhọn
>>>
>>> 200000000000000000.0
2e+17
14Các dấu ngoặc nhọn đó hỗ trợ một cách đơn giản mà bạn có thể sử dụng để thay đổi hình thức của giá trị trong chuỗi được định dạng cuối cùng
Ví dụ: để định dạng giá trị của
>>> 200000000000000000.0
2e+17
213 trong ví dụ trên thành hai chữ số thập phân, hãy thay thế nội dung của dấu ngoặc nhọn trong chuỗi f bằng >>> 200000000000000000.0
2e+17
562>>>
>>> 200000000000000000.0
2e+17
15Dấu hai chấm [
>>> 200000000000000000.0
2e+17
563] sau biến >>> 200000000000000000.0
2e+17
213 chỉ ra rằng mọi thứ sau nó là một phần của đặc tả định dạng. Trong ví dụ này, đặc tả định dạng là >>> 200000000000000000.0
2e+17
565>>> 200000000000000000.0
2e+17
566 trong >>> 200000000000000000.0
2e+17
565 làm tròn số đến hai chữ số thập phân và >>> 200000000000000000.0
2e+17
568 yêu cầu Python hiển thị >>> 200000000000000000.0
2e+17
213 dưới dạng số điểm cố định. Điều này có nghĩa là số được hiển thị với chính xác hai chữ số thập phân, ngay cả khi số gốc có ít chữ số thập phân hơnKhi
>>> 200000000000000000.0
2e+17
570, kết quả của >>> 200000000000000000.0
2e+17
562 là >>> 200000000000000000.0
2e+17
572. Cũng giống như với >>> 200000000000000000.0
2e+17
276, Python làm tròn các liên kết chẵn khi định dạng số bên trong chuỗi. Vì vậy, nếu bạn thay thế >>> 200000000000000000.0
2e+17
570 bằng >>> 200000000000000000.0
2e+17
575, thì kết quả của >>> 200000000000000000.0
2e+17
562 là >>> 200000000000000000.0
2e+17
577>>>
>>> 200000000000000000.0
2e+17
16Để làm tròn đến một chữ số thập phân, thay thế
>>> 200000000000000000.0
2e+17
566 bằng >>> 200000000000000000.0
2e+17
579>>>
>>> 200000000000000000.0
2e+17
17Khi bạn định dạng một số là điểm cố định, số đó luôn được hiển thị với số vị trí thập phân chính xác mà bạn chỉ định
>>>
>>> 200000000000000000.0
2e+17
18Bạn có thể chèn dấu phẩy để nhóm phần nguyên của các số lớn theo hàng nghìn với tùy chọn
>>> 200000000000000000.0
2e+17
580>>>
>>> 200000000000000000.0
2e+17
19Để làm tròn đến một số vị trí thập phân và cũng nhóm theo hàng nghìn, hãy đặt
>>> 200000000000000000.0
2e+17
580 trước >>> 200000000000000000.0
2e+17
582 trong thông số định dạng của bạn>>>
>>> 200000000000000000.0
2e+17
20Công cụ xác định
>>> 200000000000000000.0
2e+17
583 rất hữu ích để hiển thị các giá trị tiền tệ>>>
>>> 200000000000000000.0
2e+17
21Một tùy chọn hữu ích khác là
>>> num = 25
97, được sử dụng để hiển thị tỷ lệ phần trăm. Tùy chọn >>> num = 25
97 nhân một số với >>> 200000000000000000.0
2e+17
586 và hiển thị số đó ở định dạng điểm cố định, theo sau là dấu phần trămTùy chọn
>>> num = 25
97 phải luôn ở cuối thông số định dạng của bạn và bạn không thể kết hợp tùy chọn này với tùy chọn >>> 200000000000000000.0
2e+17
568. Ví dụ: >>> 200000000000000000.0
2e+17
589 hiển thị một số dưới dạng phần trăm với chính xác một chữ số thập phân>>>
>>> 200000000000000000.0
2e+17
22Ngôn ngữ định dạng nhỏ mạnh mẽ và rộng rãi. Bạn chỉ nhìn thấy những điều cơ bản ở đây. Để biết thêm thông tin, hãy xem
Kiểm tra việc hiểu của bạn
Mở rộng khối bên dưới để kiểm tra sự hiểu biết của bạn
Tập thể dục. Hiển thị đơn vị tiền tệHiển thị/Ẩn
In số
>>> 200000000000000000.0
2e+17
590 dưới dạng tiền tệ với hàng nghìn được nhóm theo dấu phẩy. Tiền tệ phải được hiển thị với hai chữ số thập phân và bắt đầu bằng ký hiệu đô la MỹBạn có thể mở rộng khối bên dưới để xem giải pháp
Giải pháp. Hiển thị đơn vị tiền tệHiển thị/Ẩn
Hãy xây dựng f-string của chúng ta từng bước một
Đầu tiên, chuỗi f hiển thị giá trị
>>> 200000000000000000.0
2e+17
590 mà không có bất kỳ định dạng nào trông như thế này>>>
>>> 200000000000000000.0
2e+17
23Điều này có vẻ hơi kỳ quặc, nhưng nó giúp bạn thiết lập để thêm các công cụ xác định định dạng
Để đảm bảo rằng giá trị được hiển thị dưới dạng số dấu phẩy động, hãy đặt dấu hai chấm [
>>> 200000000000000000.0
2e+17
563] sau số >>> 200000000000000000.0
2e+17
590, theo sau là chữ cái >>> 200000000000000000.0
2e+17
568>>>
>>> 200000000000000000.0
2e+17
24Theo mặc định, Python hiển thị số với sáu chữ số thập phân chính xác. Đơn vị tiền tệ chỉ được có hai chữ số thập phân chính xác, vì vậy bạn có thể thêm
>>> 200000000000000000.0
2e+17
566 vào giữa >>> 200000000000000000.0
2e+17
563 và >>> 200000000000000000.0
2e+17
568>>>
>>> 200000000000000000.0
2e+17
25Để hiển thị số có các chữ số được nhóm bằng dấu phẩy, hãy chèn dấu phẩy [
>>> 200000000000000000.0
2e+17
580] giữa dấu hai chấm [>>> 200000000000000000.0
2e+17
563] và dấu chấm [>>> 200000000000000000.0
2e+17
582]>>>
>>> 200000000000000000.0
2e+17
26Cuối cùng, thêm ký hiệu đô la [
>>> 200000000000000000.0
2e+17
901] vào đầu chuỗi để cho biết giá trị tính bằng đô la Mỹ>>>
>>> 200000000000000000.0
2e+17
27Chuỗi F chỉ là một cách để định dạng số để hiển thị. Hãy xem Hướng dẫn về các kỹ thuật định dạng chuỗi Python mới hơn để biết thêm nhiều cách định dạng số và văn bản khác trong Python
Khi bạn đã sẵn sàng, bạn có thể chuyển sang phần tiếp theo
Loại bỏ các quảng cáoSố phức
Python là một trong số ít ngôn ngữ lập trình cung cấp hỗ trợ tích hợp cho các số phức. Mặc dù các số phức thường không xuất hiện bên ngoài các lĩnh vực điện toán khoa học và đồ họa máy tính, nhưng sự hỗ trợ của Python dành cho chúng là một trong những thế mạnh của nó
Nếu bạn đã từng học một lớp toán đại số hoặc toán sơ cấp bậc cao hơn, thì bạn có thể nhớ rằng một số phức là một số có hai thành phần riêng biệt. một phần thực và một phần ảo
Để tạo một số phức trong Python, bạn chỉ cần viết phần thực, sau đó là dấu cộng, sau đó là phần ảo với chữ j ở cuối
>>>
>>> 200000000000000000.0
2e+17
28Khi bạn kiểm tra giá trị của
>>> 200000000000000000.0
2e+17
213, bạn sẽ nhận thấy rằng Python bao quanh số đó bằng dấu ngoặc đơn>>>
>>> 200000000000000000.0
2e+17
29Quy ước này giúp loại bỏ bất kỳ sự nhầm lẫn nào mà đầu ra được hiển thị có thể đại diện cho một chuỗi hoặc biểu thức toán học
Số ảo đi kèm với hai thuộc tính,
>>> 200000000000000000.0
2e+17
903 và >>> 200000000000000000.0
2e+17
904, lần lượt trả về các thành phần thực và ảo của số>>>
>>> 200000000000000000.0
2e+17
0Lưu ý rằng Python trả về cả thành phần thực và ảo dưới dạng số float, mặc dù chúng được chỉ định là số nguyên
Số phức cũng có phương thức
>>> 200000000000000000.0
2e+17
905 trả về liên hợp phức của số>>>
>>> 200000000000000000.0
2e+17
1Đối với bất kỳ số phức nào, liên hợp của nó là số phức có cùng phần thực và phần ảo bằng nhau về giá trị tuyệt đối nhưng trái dấu. Vì vậy, trong trường hợp này, phức liên hợp của
>>> 200000000000000000.0
2e+17
906 là >>> 200000000000000000.0
2e+17
907Các thuộc tính
>>> 200000000000000000.0
2e+17
903 và >>> 200000000000000000.0
2e+17
904 không cần dấu ngoặc đơn sau chúng giống như >>> 200000000000000000.0
2e+17
905Phương thức
>>> 200000000000000000.0
2e+17
905 là một hàm thực hiện một hành động trên một số phức, trong khi đó, >>> 200000000000000000.0
2e+17
903 và >>> 200000000000000000.0
2e+17
904 không thực hiện bất kỳ hành động nào—chúng chỉ trả về một số thông tin về số đóSự khác biệt giữa các phương thức và thuộc tính là một khía cạnh quan trọng của lập trình hướng đối tượng
Ngoại trừ toán tử chia sàn [
>>> num = 25
60], tất cả các toán tử số học hoạt động với số thực và số nguyên cũng sẽ hoạt động với số phức. Vì đây không phải là hướng dẫn về toán nâng cao nên chúng tôi sẽ không thảo luận về cơ chế của số học phức tạp. Thay vào đó, đây là một số ví dụ về việc sử dụng số phức với toán tử số học>>>
>>> 200000000000000000.0
2e+17
2Thật thú vị, mặc dù không có gì đáng ngạc nhiên từ quan điểm toán học, các đối tượng
>>> 200000000000000000.0
2e+17
6 và >>> 1e-4
0.0001
8 cũng có các thuộc tính >>> 200000000000000000.0
2e+17
903 và >>> 200000000000000000.0
2e+17
904 cũng như phương thức >>> 200000000000000000.0
2e+17
905>>>
>>> 200000000000000000.0
2e+17
3Đối với số float và số nguyên,
>>> 200000000000000000.0
2e+17
903 và >>> 200000000000000000.0
2e+17
905 luôn trả về chính số đó và >>> 200000000000000000.0
2e+17
904 luôn trả về >>> num = 25
78. Tuy nhiên, một điều cần lưu ý là >>> 200000000000000000.0
2e+17
924 và >>> 200000000000000000.0
2e+17
925 trả về một số nguyên nếu >>> 200000000000000000.0
2e+17
213 là một số nguyên và một số float nếu >>> 200000000000000000.0
2e+17
213 là một số floatBây giờ bạn đã thấy những kiến thức cơ bản về số phức, bạn có thể tự hỏi khi nào bạn sẽ cần sử dụng chúng. Nếu bạn đang học Python để phát triển web, khoa học dữ liệu hoặc lập trình cho mục đích chung, sự thật là bạn có thể không bao giờ cần sử dụng số phức
Mặt khác, số phức rất quan trọng trong các lĩnh vực như tính toán khoa học và đồ họa máy tính. Nếu bạn đã từng làm việc trong các miền đó, thì bạn có thể thấy hỗ trợ tích hợp sẵn của Python cho các số phức rất hữu ích
Loại bỏ các quảng cáoSự kết luận. Số trong Python
Trong hướng dẫn này, bạn đã học tất cả về cách làm việc với các số trong Python. Bạn đã thấy rằng có hai loại số cơ bản—số nguyên và số dấu phẩy động—và Python cũng có hỗ trợ sẵn cho các số phức
Trong hướng dẫn này, bạn đã học
- Cách thực hiện số học cơ bản với các số bằng toán tử số học của Python
- Cách viết các biểu thức số học bằng cách sử dụng các phương pháp hay nhất của PEP 8
- Số dấu phẩy động là gì và tại sao chúng có thể không phải lúc nào cũng chính xác 100 phần trăm
- Cách làm tròn số với
276>>> 200000000000000000.0 2e+17
- Số phức là gì và chúng được hỗ trợ như thế nào trong Python
Bất kể mức độ thoải mái của bạn với các con số và toán học, giờ đây bạn đã sẵn sàng thực hiện tất cả các loại phép tính trong mã Python của mình. Bạn có thể sử dụng kiến thức này để giải quyết nhiều vấn đề mà bạn sẽ gặp phải trong sự nghiệp lập trình của mình
Ghi chú. Nếu bạn thích những gì bạn học được trong ví dụ này từ Python Basics. Giới thiệu thực tế về Python 3, thì hãy nhớ xem phần còn lại của cuốn sách
Đọc thêm
Để biết thêm thông tin về các con số và toán học trong Python, hãy xem các tài nguyên này
- Các kiểu dữ liệu cơ bản trong Python
- Mô-đun toán học Python. Mọi thư bạn cân biêt
- Cách làm tròn số trong Python
- Hàm căn bậc hai của Python
Đánh dấu là đã hoàn thành
🐍 Thủ thuật Python 💌
Nhận một Thủ thuật Python ngắn và hấp dẫn được gửi đến hộp thư đến của bạn vài ngày một lần. Không có thư rác bao giờ. Hủy đăng ký bất cứ lúc nào. Được quản lý bởi nhóm Real Python
Gửi cho tôi thủ thuật Python »
Giới thiệu về David Amos
David là một nhà văn, lập trình viên và nhà toán học đam mê khám phá toán học thông qua mã
» Thông tin thêm về DavidMỗi hướng dẫn tại Real Python được tạo bởi một nhóm các nhà phát triển để nó đáp ứng các tiêu chuẩn chất lượng cao của chúng tôi. Các thành viên trong nhóm đã làm việc trong hướng dẫn này là
Aldren
Joanna
Gia-cốp
Bậc thầy Kỹ năng Python trong thế giới thực Với quyền truy cập không giới hạn vào Python thực
Tham gia với chúng tôi và có quyền truy cập vào hàng nghìn hướng dẫn, khóa học video thực hành và cộng đồng các Pythonistas chuyên gia
Nâng cao kỹ năng Python của bạn »
Bậc thầy Kỹ năng Python trong thế giới thực
Với quyền truy cập không giới hạn vào Python thực
Tham gia với chúng tôi và có quyền truy cập vào hàng ngàn hướng dẫn, khóa học video thực hành và cộng đồng các chuyên gia Pythonistas
Nâng cao kỹ năng Python của bạn »
Bạn nghĩ sao?
Đánh giá bài viết này
Tweet Chia sẻ Chia sẻ EmailBài học số 1 hoặc điều yêu thích mà bạn đã học được là gì?
Mẹo bình luận. Những nhận xét hữu ích nhất là những nhận xét được viết với mục đích học hỏi hoặc giúp đỡ các sinh viên khác. và nhận câu trả lời cho các câu hỏi phổ biến trong cổng thông tin hỗ trợ của chúng tôi