Làm thế nào để bạn biến một số thành một phân số trong python?

Chúng ta có thể sắp xếp danh sách dựa trên mục đầu tiên hoặc mục thứ hai của danh sách bên trong bằng cách sử dụng hàm sắp xếp với hàm lambda

lst.sort(key = lambda inner:inner[1])
print(lst)

đầu ra

[[3, 5], [4, 6], [6, 7], [6, 8], [5, 8], [5, 8]]

Danh sách được sắp xếp dựa trên các mục thứ hai. Chúng ta có thể làm tương tự với các mục đầu tiên chỉ bằng cách thay đổi 1 thành 0

Chắc hẳn bạn đã từng sử dụng các kiểu dữ liệu số như số nguyên và số dấu phẩy động trong python. Nhưng bạn đã sử dụng phân số ở dạng thực của chúng chưa?

Làm cách nào để sử dụng mô-đun phân số trong Python?

Chúng ta có thể sử dụng phương thức Phân số từ mô-đun phân số trong python để tạo các số hữu tỷ ở dạng phân số. Chúng ta có thể nhập mô-đun như sau

import fractions

Chúng ta có thể chuyển đổi một số nguyên, một số dấu phẩy động hoặc một chuỗi thành một phân số trong python. Để chuyển đổi tỷ lệ của hai số nguyên thành phân số, chúng ta sử dụng phương thức Fraction() của mô-đun phân số và chuyển tử số làm đối số thứ nhất và mẫu số làm đối số thứ hai. Hàm trả về một đối tượng phân số như sau

Làm thế nào để bạn biến một số thành một phân số trong python?


import fractions
myInt1=1
myInt2=2
print("Integer 1(numerator) is:",myInt1)
print("Integer 2(denominator) is:",myInt2)
myFraction=fractions.Fraction(myInt1,myInt2)
print("Fraction value is:",myFraction)

đầu ra

Integer 1(numerator) is: 1
Integer 2(denominator) is: 2
Fraction value is: 1/2

Chúng ta có thể lấy một giá trị phân số từ một số dấu phẩy động bằng cách sử dụng phương pháp Phân số của mô-đun phân số. Khi chúng ta chuyển một số dấu phẩy động cho phương thức Fraction() làm đầu vào, nó sẽ trả về giá trị phân số tương ứng như sau

import fractions
myFloat=0.5
print("Floating point number is:",myFloat)
myFraction=fractions.Fraction(myFloat)
print("Fraction value is:",myFraction)

đầu ra

Floating point number is: 0.5
Fraction value is: 1/2

Chúng ta cũng có thể chuyển đổi một chuỗi thành phân số bằng phương thức Fraction(). Chúng ta có thể chuyển một biểu diễn chuỗi của phân số hoặc ký tự dấu phẩy động trong chuỗi làm đầu vào cho phương thức Phân số trả về các giá trị phân số tương ứng như sau

import fractions
myStr1="0.5"
print("String literal is:",myStr1)
myFraction1=fractions.Fraction(myStr1)
print("Fraction value is:",myFraction1)
myStr2="1/2"
print("String literal is:",myStr2)
myFraction2=fractions.Fraction(myStr2)
print("Fraction value is:",myFraction2)

đầu ra

________số 8_______

Làm thế nào để làm tròn phân số?

Chúng ta có thể làm tròn phân số trong python theo số chữ số bắt buộc ở mẫu số của phân số bằng phương thức round(). Phương thức round() lấy phân số được làm tròn làm đối số thứ nhất và số chữ số mà mẫu số sẽ được làm tròn làm đối số thứ hai. Hàm trả về một phân số có số lượng chữ số mong muốn trong mẫu số. Điều này có thể được hiểu như sau


import fractions
myInt1=50
myInt2=3
myFraction=fractions.Fraction(myInt1,myInt2)
print("Fraction value is:",myFraction)
rounded=round(myFraction,2)
print("Rounded value is:",rounded)

đầu ra

Fraction value is: 50/3
Rounded value is: 1667/100

Khi chúng ta không chuyển số chữ số mà mẫu số sẽ được làm tròn thành đối số thứ hai, phương thức round() sẽ chuyển đổi phân số thành số nguyên gần nhất. Điều này có thể được nhìn thấy như sau

import fractions
myInt1=50
myInt2=3
myFraction=fractions.Fraction(myInt1,myInt2)
print("Fraction value is:",myFraction)
rounded=round(myFraction)
print("Rounded value is:",rounded)

đầu ra


import fractions
myInt1=1
myInt2=2
print("Integer 1(numerator) is:",myInt1)
print("Integer 2(denominator) is:",myInt2)
myFraction=fractions.Fraction(myInt1,myInt2)
print("Fraction value is:",myFraction)
0

Lấy tử số và mẫu số của một phân số

Chúng ta cũng có thể trích xuất tử số và mẫu số từ Phân số. Để trích xuất tử số, chúng tôi sử dụng trường  “tử số” của đối tượng phân số. Tương tự, để rút mẫu số, chúng ta sử dụng trường “mẫu số” của đối tượng phân số. Điều này có thể được hiểu từ ví dụ sau


import fractions
myInt1=1
myInt2=2
print("Integer 1(numerator) is:",myInt1)
print("Integer 2(denominator) is:",myInt2)
myFraction=fractions.Fraction(myInt1,myInt2)
print("Fraction value is:",myFraction)
1

đầu ra


import fractions
myInt1=1
myInt2=2
print("Integer 1(numerator) is:",myInt1)
print("Integer 2(denominator) is:",myInt2)
myFraction=fractions.Fraction(myInt1,myInt2)
print("Fraction value is:",myFraction)
2

Các phép toán trên phân số

Chúng ta có thể thực hiện các phép toán số học như cộng, trừ, nhân và chia trên phân số bằng mô-đun phân số trong python giống như chúng ta thực hiện các phép toán này trên các loại dữ liệu số khác như số nguyên và số dấu phẩy động

Chúng ta có thể thực hiện các phép tính số học trên hai phân số đã cho trong python như sau


import fractions
myInt1=1
myInt2=2
print("Integer 1(numerator) is:",myInt1)
print("Integer 2(denominator) is:",myInt2)
myFraction=fractions.Fraction(myInt1,myInt2)
print("Fraction value is:",myFraction)
3

đầu ra


import fractions
myInt1=1
myInt2=2
print("Integer 1(numerator) is:",myInt1)
print("Integer 2(denominator) is:",myInt2)
myFraction=fractions.Fraction(myInt1,myInt2)
print("Fraction value is:",myFraction)
4

Nhận giá trị hợp lý gần đúng từ một số dấu phẩy động bằng mô-đun phân số

Chúng ta có thể thu được một số hữu tỷ ở dạng phân số từ bất kỳ dấu phẩy động hoặc giá trị thập phân nào. Để lấy phân số từ số thập phân, chúng ta có thể truyền số thập phân cho phương thức Fraction() sẽ chuyển đổi chúng thành số hữu tỉ như sau


import fractions
myInt1=1
myInt2=2
print("Integer 1(numerator) is:",myInt1)
print("Integer 2(denominator) is:",myInt2)
myFraction=fractions.Fraction(myInt1,myInt2)
print("Fraction value is:",myFraction)
5

đầu ra


import fractions
myInt1=1
myInt2=2
print("Integer 1(numerator) is:",myInt1)
print("Integer 2(denominator) is:",myInt2)
myFraction=fractions.Fraction(myInt1,myInt2)
print("Fraction value is:",myFraction)
6

Sau khi thu được phân số ở dạng trên, chúng ta có thể giới hạn giá trị lớn nhất của mẫu số bằng phương thức limit_denominator(). Phương thức limit_denominator(), khi được gọi trên một phân số, sẽ lấy giá trị cao nhất được phép của mẫu số làm đầu vào và trả về phân số tương ứng. Điều này có thể được hiểu từ ví dụ sau


import fractions
myInt1=1
myInt2=2
print("Integer 1(numerator) is:",myInt1)
print("Integer 2(denominator) is:",myInt2)
myFraction=fractions.Fraction(myInt1,myInt2)
print("Fraction value is:",myFraction)
7

đầu ra


import fractions
myInt1=1
myInt2=2
print("Integer 1(numerator) is:",myInt1)
print("Integer 2(denominator) is:",myInt2)
myFraction=fractions.Fraction(myInt1,myInt2)
print("Fraction value is:",myFraction)
8

Phần kết luận

Trong bài viết này, chúng ta đã nghiên cứu về kiểu dữ liệu phân số  và đã triển khai nó bằng cách sử dụng mô-đun phân số  trong python. Chúng ta cũng có thể viết các chương trình được sử dụng trong bài viết này với việc xử lý ngoại lệ bằng cách sử dụng python try except để làm cho chương trình mạnh mẽ hơn và xử lý lỗi một cách có hệ thống. Hãy theo dõi để biết thêm các bài viết thông tin

Có liên quan

Đào tạo Python được đề xuất

Khóa học. Python 3 cho người mới bắt đầu

Hơn 15 giờ nội dung video với hướng dẫn có hướng dẫn cho người mới bắt đầu. Tìm hiểu cách tạo các ứng dụng trong thế giới thực và nắm vững kiến ​​thức cơ bản

Bạn có thể nhập phân số bằng Python không?

Tạo phân số Python từ các loại dữ liệu khác nhau. Không giống như int hay float , phân số không phải là kiểu dữ liệu tích hợp sẵn trong Python , nghĩa là bạn phải nhập một mô-đun tương ứng từ thư viện chuẩn vào .