Trong Python, chúng ta có thể thực hiện phép chia sàn [đôi khi còn được gọi là phép chia số nguyên] bằng cách sử dụng toán tử
0. Toán tử này sẽ chia đối số thứ nhất cho đối số thứ hai và làm tròn kết quả xuống số nguyên gần nhất, làm cho nó tương đương với hàm3
Learn Data Science with
13
Learn Data Science with
Xem bên dưới để biết ví dụ nhanh về điều này
15 // 4
Learn Data Science with
Ngoài
3
Learn Data Science with
Cái nào giống như
import math math.floor[15 / 4]
Learn Data Science with
Ngoài
3
Learn Data Science with
/ vs // — phép chia vs phép chia tầng
Kết quả của phép chia thông thường [sử dụng toán tử
2] là $\frac{15}{4} = 3. 75 đô la, nhưng sử dụng3
Learn Data Science with
0 đã tăng lên 3 đô la. 75 đô la xuống còn 3 đô la3
Learn Data Science with
Kết quả của phép chia thông thường luôn là số float, trong khi nếu một trong các toán hạng là số float trong phép chia sàn, thì đầu ra sẽ là số float
Sau đây là một ví dụ về điều này
________số 8
Ngoài
Regular division 1.0 is a float. Floor division 3 is an int. 3.0 is a float.
Learn Data Science with
Chia tầng bằng số âm
Khi toán hạng là số âm, phép chia sàn sẽ trả về số nguyên lớn nhất nhỏ hơn hoặc bằng kết quả của phép chia thông thường. Hãy sử dụng các toán hạng giống như trước đây để cho thấy nó hoạt động như thế nào
03
Learn Data Science with
Ngoài
13
Learn Data Science with
Nhìn vào kết quả của phép chia thông thường khi cả hai số đều dương, $\frac{15}{4}=3. 75$, phép chia sàn trả về $3$, vì đó là số nguyên lớn nhất nhỏ hơn hoặc bằng $3. 75$. Khi một trong các toán hạng là âm, kết quả của phép chia bình thường là âm [$-3. 75$], vì vậy số nguyên lớn nhất nhỏ hơn hoặc bằng là $-4$
Chúng ta sẽ xem xét việc phân chia tầng có thể hữu ích ở đâu đồng thời xem xét các cách tiếp cận khác mà chúng ta có thể sử dụng để đạt được kết quả tương tự
Các trường hợp sử dụng phân chia tầng
Khi sử dụng Python, bạn sẽ thường gặp lỗi các hàm không tương thích với số float. Ví dụ: giả sử bạn muốn sử dụng hàm phạm vi với thương của hai số
23
Learn Data Science with
Ngoài
33
Learn Data Science with
Để chương trình của chúng tôi hoạt động chính xác, trước tiên chúng tôi cần chuyển đổi thương số thành loại số nguyên, chúng tôi có thể đạt được điều này với toán tử
03
Learn Data Science with
03
Learn Data Science with
Ngoài
13
Learn Data Science with
Một lĩnh vực khác mà bạn có thể muốn sử dụng toán tử sàn là khi đánh chỉ mục danh sách
23
Learn Data Science with
Ngoài
33
Learn Data Science with
Một cách để giải quyết vấn đề này là sử dụng toán tử chia tầng
43
Learn Data Science with
Ngoài
53
Learn Data Science with
Tùy thuộc vào ứng dụng của bạn, sàn một số không nhất thiết phải là lựa chọn tốt nhất. Trong phần tiếp theo, chúng ta sẽ xem xét các hàm khác nhau có thể cho kết quả tương tự
Các cách tiếp cận thay thế cho //
Đôi khi, bạn sẽ thấy mình đang làm việc với các bộ dữ liệu chứa cả số nguyên và số thực, chẳng hạn như nếu bạn đang sử dụng dữ liệu lộn xộn
Trong những trường hợp đó, toán tử
0 sẽ tạo ra kết quả không nhất quán, xuất ra cả số thực và số nguyên. Do đó, nếu chương trình của bạn phụ thuộc vào số nguyên, thì việc sử dụng toán tử3
Learn Data Science with
0 sẽ yêu cầu các bước bổ sung để đảm bảo đầu ra nhất quán3
Learn Data Science with
Có một số cách khác để thao tác thương của hai số để hoạt động phù hợp với chương trình của bạn. Ví dụ: không phải lúc nào bạn cũng muốn làm tròn giá trị xuống, vì vậy, sử dụng các phương pháp tiếp cận khác nhau có thể giúp bạn kiểm soát nhiều hơn kết quả
lựa chọn 1. môn Toán. sàn nhà[]
1 đạt được kết quả tương tự như toán tử chia sàn, làm tròn đối số của nó xuống số nguyên gần nhất3
Learn Data Science with
Một điểm khác biệt đáng kể khi sử dụng
1 là nó luôn xuất ra một số nguyên, bất kể kiểu dữ liệu đầu vào là gì. Khi làm việc với cả số nguyên và số float,3
Learn Data Science with
1 hữu ích hơn vì nó cung cấp đầu ra nhất quán hơn3
Learn Data Science with
Sau đây cho thấy cách chúng ta có thể tính kết quả của phép chia thông thường
import math math.floor[15 / 4]
Learn Data Science with
Ngoài
3
Learn Data Science with
Giống như khi sử dụng toán tử sàn,
0 vẫn sẽ làm tròn xuống khi đầu vào là số âmprint["Regular division"] print[2 / 2, "\tis a float."] print["\nFloor division"] print[15 // 4, "\tis an int."] print[15.0 // 4, "\tis a float."]
Learn Data Science with
Lựa chọn 2. môn Toán. trần nhà[]
Ngoài ra, đối với
1, chúng ta cũng có thể sử dụng3
Learn Data Science with
2, sẽ luôn làm tròn lên đến số nguyên gần nhất thay vì xuốngprint["Regular division"] print[2 / 2, "\tis a float."] print["\nFloor division"] print[15 // 4, "\tis an int."] print[15.0 // 4, "\tis a float."]
Learn Data Science with
Ví dụ
83
Learn Data Science with
Ngoài
93
Learn Data Science with
Theo cách tương tự như
0,print["Regular division"] print[2 / 2, "\tis a float."] print["\nFloor division"] print[15 // 4, "\tis an int."] print[15.0 // 4, "\tis a float."]
Learn Data Science with
4 luôn cung cấp đầu ra dưới dạng kiểu số nguyên, bất kể kiểu dữ liệu đối số.print["Regular division"] print[2 / 2, "\tis a float."] print["\nFloor division"] print[15 // 4, "\tis an int."] print[15.0 // 4, "\tis a float."]
Learn Data Science with
4 sẽ làm tròn số âm lên, vì vậy kết quả làprint["Regular division"] print[2 / 2, "\tis a float."] print["\nFloor division"] print[15 // 4, "\tis an int."] print[15.0 // 4, "\tis a float."]
Learn Data Science with
6 sẽ cho kết quả làprint["Regular division"] print[2 / 2, "\tis a float."] print["\nFloor division"] print[15 // 4, "\tis an int."] print[15.0 // 4, "\tis a float."]
Learn Data Science with
7print["Regular division"] print[2 / 2, "\tis a float."] print["\nFloor division"] print[15 // 4, "\tis an int."] print[15.0 // 4, "\tis a float."]
Learn Data Science with
Tùy chọn 3. int[]
Để khắc phục nhanh, bạn có thể chuyển một
8 sang mộtprint["Regular division"] print[2 / 2, "\tis a float."] print["\nFloor division"] print[15 // 4, "\tis an int."] print[15.0 // 4, "\tis a float."]
Learn Data Science with
9. Truyền số float cho ________ 90 dẫn đến một số nguyên trong đó mọi thứ bị cắt sau khi nhập số thập phân floatprint["Regular division"] print[2 / 2, "\tis a float."] print["\nFloor division"] print[15 // 4, "\tis an int."] print[15.0 // 4, "\tis a float."]
Learn Data Science with
Trong ví dụ sau, $\frac{15}{4}=3. 75 đô la, nhưng chuyển sang một số nguyên sẽ cắt bỏ $. 75$
0import math math.floor[15 / 4]
Learn Data Science with
Ngoài
3
Learn Data Science with
0 hoạt động tương tự nhưRegular division 1.0 is a float. Floor division 3 is an int. 3.0 is a float.
Learn Data Science with
1, ngoại trừ3
Learn Data Science with
0 làm tròn số âm lên thay vì xuống một cách hiệu quảRegular division 1.0 is a float. Floor division 3 is an int. 3.0 is a float.
Learn Data Science with
2import math math.floor[15 / 4]
Learn Data Science with
Ngoài
3import math math.floor[15 / 4]
Learn Data Science with
Tùy chọn 4. vòng[]
Ngoài các hàm
4, chúng ta cũng có thể sử dụngRegular division 1.0 is a float. Floor division 3 is an int. 3.0 is a float.
Learn Data Science with
5 để làm tròn giá trị và sau đó xuất kết quả dưới dạng số nguyênRegular division 1.0 is a float. Floor division 3 is an int. 3.0 is a float.
Learn Data Science with
Sự khác biệt với
5 là nó sẽ sử dụng cách làm tròn thông thường, tôi. e. rằng bất kỳ số thập phân nào. 5 và lớn hơn được làm tròn lênRegular division 1.0 is a float. Floor division 3 is an int. 3.0 is a float.
Learn Data Science with
Sau đây minh họa cách sử dụng của
5Regular division 1.0 is a float. Floor division 3 is an int. 3.0 is a float.
Learn Data Science with
4import math math.floor[15 / 4]
Learn Data Science with
Ngoài
93
Learn Data Science with
Chúng tôi cũng có thể chỉ định số lượng điểm thập phân đầu vào sẽ được làm tròn
Ví dụ dưới đây cho thấy cách chúng ta có thể làm tròn kết quả của
8 chia choRegular division 1.0 is a float. Floor division 3 is an int. 3.0 is a float.
Learn Data Science with
9 [Regular division 1.0 is a float. Floor division 3 is an int. 3.0 is a float.
Learn Data Science with
00] đến 1 chữ số thập phân3
Learn Data Science with
6import math math.floor[15 / 4]
Learn Data Science with
Ngoài
7import math math.floor[15 / 4]
Learn Data Science with
Thêm một
01 sau dấu phẩy thông báo rằng chúng tôi muốn kết quả có 1 dấu thập phân, nhưng chúng tôi có thể sử dụng bất kỳ số nào. Ví dụ: chúng ta có thể làm tròn giá trị của số pi đến chín chữ số thập phân3
Learn Data Science with
8import math math.floor[15 / 4]
Learn Data Science with
Ngoài
9import math math.floor[15 / 4]
Learn Data Science with
Bản tóm tắt
Toán tử chia tầng [
0] chủ yếu được sử dụng khi bạn yêu cầu một số nguyên hoặc cần trả về số nguyên nhỏ nhất nhỏ hơn hoặc bằng đầu vào3
Learn Data Science with
Nếu toán hạng đều là số nguyên thì đầu ra sẽ là số nguyên. Nếu một trong hai toán hạng là số float thì đầu ra sẽ là số float
Các dòng sử dụng toán tử
0 rất dễ đọc và thành ngữ, nhưng trong trường hợp bạn đang làm việc với các tập dữ liệu lộn xộn và không nhất quán, thì tốt hơn nên sử dụng3
Learn Data Science with
1,3
Learn Data Science with
2,print["Regular division"] print[2 / 2, "\tis a float."] print["\nFloor division"] print[15 // 4, "\tis an int."] print[15.0 // 4, "\tis a float."]
Learn Data Science with
0 hoặcRegular division 1.0 is a float. Floor division 3 is an int. 3.0 is a float.
Learn Data Science with
5Regular division 1.0 is a float. Floor division 3 is an int. 3.0 is a float.
Learn Data Science with
Bắt đầu học miễn phí
Nhận thông tin cập nhật trong hộp thư đến của bạn
Tham gia cùng hơn 7.500 người học khoa học dữ liệu
Bài viết gần đây
Ưu đãi khóa học tốt nhất cho Thứ Sáu Đen và Thứ Hai Điện Tử 2022Hàm sigmoidchấm sản phẩm7 khóa học về trí tuệ nhân tạo [AI] tốt nhất năm 2022Các khóa học Python tốt nhất theo phân tích dữ liệu
Trong số khoảng 3000 dịch vụ, đây là những khóa học Python tốt nhất theo phân tích này
xem bài viếtNhận thông tin cập nhật trong hộp thư đến của bạn
Tham gia cùng hơn 7.500 người học khoa học dữ liệu
Gặp gỡ các tác giả
Nhà khoa học dữ liệu Alfie Grace
Alfie tốt nghiệp Thạc sĩ Kỹ thuật Cơ khí tại Đại học College London. Anh ấy hiện đang làm Nhà khoa học dữ liệu tại Square Enix. Tìm anh ấy trên LinkedIn