Hướng dẫn how to represent binary in python - cách biểu diễn hệ nhị phân trong python

Làm thế nào để bạn thể hiện văn học nhị phân trong Python?

Chúng không phải là "nhị phân" theo nghĩa đen, mà là, "chữ số nguyên". Bạn có thể thể hiện các chữ số nguyên với định dạng nhị phân với

integer      ::=  decinteger | bininteger | octinteger | hexinteger
decinteger   ::=  nonzerodigit [["_"] digit]* | "0"+ [["_"] "0"]*
bininteger   ::=  "0" ["b" | "B"] [["_"] bindigit]+
octinteger   ::=  "0" ["o" | "O"] [["_"] octdigit]+
hexinteger   ::=  "0" ["x" | "X"] [["_"] hexdigit]+
nonzerodigit ::=  "1"..."9"
digit        ::=  "0"..."9"
bindigit     ::=  "0" | "1"
octdigit     ::=  "0"..."7"
hexdigit     ::=  digit | "a"..."f" | "A"..."F"
7 theo sau là
integer      ::=  decinteger | bininteger | octinteger | hexinteger
decinteger   ::=  nonzerodigit [["_"] digit]* | "0"+ [["_"] "0"]*
bininteger   ::=  "0" ["b" | "B"] [["_"] bindigit]+
octinteger   ::=  "0" ["o" | "O"] [["_"] octdigit]+
hexinteger   ::=  "0" ["x" | "X"] [["_"] hexdigit]+
nonzerodigit ::=  "1"..."9"
digit        ::=  "0"..."9"
bindigit     ::=  "0" | "1"
octdigit     ::=  "0"..."7"
hexdigit     ::=  digit | "a"..."f" | "A"..."F"
8 hoặc
integer      ::=  decinteger | bininteger | octinteger | hexinteger
decinteger   ::=  nonzerodigit [["_"] digit]* | "0"+ [["_"] "0"]*
bininteger   ::=  "0" ["b" | "B"] [["_"] bindigit]+
octinteger   ::=  "0" ["o" | "O"] [["_"] octdigit]+
hexinteger   ::=  "0" ["x" | "X"] [["_"] hexdigit]+
nonzerodigit ::=  "1"..."9"
digit        ::=  "0"..."9"
bindigit     ::=  "0" | "1"
octdigit     ::=  "0"..."7"
hexdigit     ::=  digit | "a"..."f" | "A"..."F"
9, sau đó là một loạt các số không và các số không, ví dụ::

>>> 0b0010101010
170
>>> 0B010101
21

Từ Python 3 Docs, đây là những cách cung cấp các chữ số nguyên trong Python:

Các chữ số nguyên được mô tả bằng các định nghĩa từ vựng sau:

integer      ::=  decinteger | bininteger | octinteger | hexinteger
decinteger   ::=  nonzerodigit [["_"] digit]* | "0"+ [["_"] "0"]*
bininteger   ::=  "0" ["b" | "B"] [["_"] bindigit]+
octinteger   ::=  "0" ["o" | "O"] [["_"] octdigit]+
hexinteger   ::=  "0" ["x" | "X"] [["_"] hexdigit]+
nonzerodigit ::=  "1"..."9"
digit        ::=  "0"..."9"
bindigit     ::=  "0" | "1"
octdigit     ::=  "0"..."7"
hexdigit     ::=  digit | "a"..."f" | "A"..."F"

Không có giới hạn cho độ dài của các chữ số nguyên ngoài những gì có thể được lưu trữ trong bộ nhớ có sẵn.

Lưu ý rằng các số không hàng đầu trong một số thập phân khác không được phép. Điều này là để định hướng với các chữ theo nghĩa ba kiểu chữ C, mà Python đã sử dụng trước phiên bản 3.0.

Một số ví dụ về chữ số nguyên:

7     2147483647                        0o177    0b100110111
3     79228162514264337593543950336     0o377    0xdeadbeef
      100_000_000_000                   0b_1110_0101

Đã thay đổi trong phiên bản 3.6: Dấu gạch dưới hiện được phép nhóm các mục đích nhóm trong nghĩa đen.

Những cách khác để thể hiện nhị phân:

Bạn có thể có các số không và các số không trong một đối tượng chuỗi có thể được thao tác [mặc dù có lẽ bạn chỉ nên thực hiện các thao tác bitwise trên số nguyên trong hầu hết các trường hợp] - chỉ cần chuyển int chuỗi số 0 và cơ sở bạn đang chuyển đổi từ [2 ]:

>>> int['010101', 2]
21

Bạn có thể tùy chọn có tiền tố

7     2147483647                        0o177    0b100110111
3     79228162514264337593543950336     0o377    0xdeadbeef
      100_000_000_000                   0b_1110_0101
0 hoặc
7     2147483647                        0o177    0b100110111
3     79228162514264337593543950336     0o377    0xdeadbeef
      100_000_000_000                   0b_1110_0101
1:

>>> int['0b0010101010', 2]
170

Nếu bạn vượt qua nó

integer      ::=  decinteger | bininteger | octinteger | hexinteger
decinteger   ::=  nonzerodigit [["_"] digit]* | "0"+ [["_"] "0"]*
bininteger   ::=  "0" ["b" | "B"] [["_"] bindigit]+
octinteger   ::=  "0" ["o" | "O"] [["_"] octdigit]+
hexinteger   ::=  "0" ["x" | "X"] [["_"] hexdigit]+
nonzerodigit ::=  "1"..."9"
digit        ::=  "0"..."9"
bindigit     ::=  "0" | "1"
octdigit     ::=  "0"..."7"
hexdigit     ::=  digit | "a"..."f" | "A"..."F"
7 làm cơ sở, nó sẽ giả sử cơ sở 10 nếu chuỗi không chỉ định với tiền tố:

>>> int['10101', 0]
10101
>>> int['0b10101', 0]
21

Chuyển đổi từ int trở lại nhị phân có thể đọc được của con người:

Bạn có thể chuyển một số nguyên cho thùng để xem biểu diễn chuỗi của một chữ nhị phân:

>>> bin[21]
'0b10101'

Và bạn có thể kết hợp

7     2147483647                        0o177    0b100110111
3     79228162514264337593543950336     0o377    0xdeadbeef
      100_000_000_000                   0b_1110_0101
3 và
7     2147483647                        0o177    0b100110111
3     79228162514264337593543950336     0o377    0xdeadbeef
      100_000_000_000                   0b_1110_0101
4 để qua lại:

>>> bin[int['010101', 2]]
'0b10101'

Bạn cũng có thể sử dụng một đặc tả định dạng, nếu bạn muốn có chiều rộng tối thiểu với số không trước:

>>> format[int['010101', 2], '{fill}{width}b'.format[width=10, fill=0]]
'0000010101'
>>> format[int['010101', 2], '010b']
'0000010101'

Trang chủ »Python

Đại diện số nhị phân trong Python: Ở đây, chúng ta sẽ học cách làm việc với các số nhị phân, cách gán, chuyển đổi và hoạt động bitwise trên số nhị phân? Được gửi bởi POCKSHELP, vào ngày 05 tháng 9 năm 2018 Here, we will learn how to work with the binary numbers, how to assign, conversion and bitwise operations on binary numbers?
Submitted by IncludeHelp, on September 05, 2018

Gán giá trị nhị phân cho biến

Để gán các giá trị nhị phân cho biến, chúng tôi sử dụng tiền tố 0b hoặc 0b với giá trị nhị phân.0b or 0B with the binary value.

Example:

# assign number as binary 
# prefix 0b 
num = 0b111101
print "num: ", num

# prefix 0B 
num = 0B111101
print "num: ", num

Đầu ra

integer      ::=  decinteger | bininteger | octinteger | hexinteger
decinteger   ::=  nonzerodigit [["_"] digit]* | "0"+ [["_"] "0"]*
bininteger   ::=  "0" ["b" | "B"] [["_"] bindigit]+
octinteger   ::=  "0" ["o" | "O"] [["_"] octdigit]+
hexinteger   ::=  "0" ["x" | "X"] [["_"] hexdigit]+
nonzerodigit ::=  "1"..."9"
digit        ::=  "0"..."9"
bindigit     ::=  "0" | "1"
octdigit     ::=  "0"..."7"
hexdigit     ::=  digit | "a"..."f" | "A"..."F"
0

Chuyển đổi giá trị thập phân thành nhị phân

Để chuyển đổi giá trị thập phân sang nhị phân, chúng tôi sử dụng phương thức bin [], là phương thức sẵn có trong Python.bin[] Method, which is an inbuilt method in the Python.

Ví dụ: Chương trình Python, trả về giá trị nhị phân có giá trị thập phân đã cho Python program, that returns a binary value of given decimal value

integer      ::=  decinteger | bininteger | octinteger | hexinteger
decinteger   ::=  nonzerodigit [["_"] digit]* | "0"+ [["_"] "0"]*
bininteger   ::=  "0" ["b" | "B"] [["_"] bindigit]+
octinteger   ::=  "0" ["o" | "O"] [["_"] octdigit]+
hexinteger   ::=  "0" ["x" | "X"] [["_"] hexdigit]+
nonzerodigit ::=  "1"..."9"
digit        ::=  "0"..."9"
bindigit     ::=  "0" | "1"
octdigit     ::=  "0"..."7"
hexdigit     ::=  digit | "a"..."f" | "A"..."F"
1

Đầu ra

integer      ::=  decinteger | bininteger | octinteger | hexinteger
decinteger   ::=  nonzerodigit [["_"] digit]* | "0"+ [["_"] "0"]*
bininteger   ::=  "0" ["b" | "B"] [["_"] bindigit]+
octinteger   ::=  "0" ["o" | "O"] [["_"] octdigit]+
hexinteger   ::=  "0" ["x" | "X"] [["_"] hexdigit]+
nonzerodigit ::=  "1"..."9"
digit        ::=  "0"..."9"
bindigit     ::=  "0" | "1"
octdigit     ::=  "0"..."7"
hexdigit     ::=  digit | "a"..."f" | "A"..."F"
2

Chuyển đổi giá trị nhị phân thành thập phân

Khi, chúng tôi in giá trị nhị phân - không cần phải chuyển đổi nó; In in giá trị theo định dạng thập phân, nhưprint prints the value in decimal format, like

In 0b111101 - Đầu ra của nó sẽ là 61. - its output will be 61.

Tuy nhiên, chúng ta có thể sử dụng phương thức int [] để chuyển đổi nó thành thập phân bằng cách xác định cơ sở của hệ thống số.int[] method to convert it into decimal by defining base of the number system.

Example:

integer      ::=  decinteger | bininteger | octinteger | hexinteger
decinteger   ::=  nonzerodigit [["_"] digit]* | "0"+ [["_"] "0"]*
bininteger   ::=  "0" ["b" | "B"] [["_"] bindigit]+
octinteger   ::=  "0" ["o" | "O"] [["_"] octdigit]+
hexinteger   ::=  "0" ["x" | "X"] [["_"] hexdigit]+
nonzerodigit ::=  "1"..."9"
digit        ::=  "0"..."9"
bindigit     ::=  "0" | "1"
octdigit     ::=  "0"..."7"
hexdigit     ::=  digit | "a"..."f" | "A"..."F"
3

Đầu ra

integer      ::=  decinteger | bininteger | octinteger | hexinteger
decinteger   ::=  nonzerodigit [["_"] digit]* | "0"+ [["_"] "0"]*
bininteger   ::=  "0" ["b" | "B"] [["_"] bindigit]+
octinteger   ::=  "0" ["o" | "O"] [["_"] octdigit]+
hexinteger   ::=  "0" ["x" | "X"] [["_"] hexdigit]+
nonzerodigit ::=  "1"..."9"
digit        ::=  "0"..."9"
bindigit     ::=  "0" | "1"
octdigit     ::=  "0"..."7"
hexdigit     ::=  digit | "a"..."f" | "A"..."F"
4

Chuyển đổi giá trị nhị phân thành thập phân

Khi, chúng tôi in giá trị nhị phân - không cần phải chuyển đổi nó; In in giá trị theo định dạng thập phân, như

Example:

integer      ::=  decinteger | bininteger | octinteger | hexinteger
decinteger   ::=  nonzerodigit [["_"] digit]* | "0"+ [["_"] "0"]*
bininteger   ::=  "0" ["b" | "B"] [["_"] bindigit]+
octinteger   ::=  "0" ["o" | "O"] [["_"] octdigit]+
hexinteger   ::=  "0" ["x" | "X"] [["_"] hexdigit]+
nonzerodigit ::=  "1"..."9"
digit        ::=  "0"..."9"
bindigit     ::=  "0" | "1"
octdigit     ::=  "0"..."7"
hexdigit     ::=  digit | "a"..."f" | "A"..."F"
5

Đầu ra

integer      ::=  decinteger | bininteger | octinteger | hexinteger
decinteger   ::=  nonzerodigit [["_"] digit]* | "0"+ [["_"] "0"]*
bininteger   ::=  "0" ["b" | "B"] [["_"] bindigit]+
octinteger   ::=  "0" ["o" | "O"] [["_"] octdigit]+
hexinteger   ::=  "0" ["x" | "X"] [["_"] hexdigit]+
nonzerodigit ::=  "1"..."9"
digit        ::=  "0"..."9"
bindigit     ::=  "0" | "1"
octdigit     ::=  "0"..."7"
hexdigit     ::=  digit | "a"..."f" | "A"..."F"
6

Làm thế nào để bạn đại diện cho nhị phân?

1. Giới thiệu. Nhị phân là một hệ thống số cơ sở-2 sử dụng hai trạng thái loại trừ lẫn nhau để thể hiện thông tin. Một số nhị phân được tạo thành từ các yếu tố gọi là bit trong đó mỗi bit có thể ở một trong hai trạng thái có thể. Nói chung, chúng tôi đại diện cho chúng với các chữ số 1 và 0.with the numerals 1 and 0 .

Định dạng nhị phân ở Python là gì?

Một tệp nhị phân là một tệp có nội dung ở định dạng nhị phân bao gồm một loạt các byte tuần tự, mỗi loại có chiều dài tám bit. Nội dung phải được giải thích bởi một chương trình hoặc bộ xử lý phần cứng hiểu trước chính xác cách nội dung đó được định dạng và cách đọc dữ liệu.a file whose content is in a binary format consisting of a series of sequential bytes, each of which is eight bits in length. The content must be interpreted by a program or a hardware processor that understands in advance exactly how that content is formatted and how to read the data.

Làm thế nào để bạn viết các biến nhị phân trong Python?

Để gán giá trị ở định dạng nhị phân cho một biến, chúng tôi sử dụng hậu tố 0b.Nó nói với trình biên dịch rằng giá trị [được hậu tố với 0b] là giá trị nhị phân và gán nó cho biến.Lưu ý: Để in giá trị ở định dạng nhị phân, chúng tôi sử dụng hàm bin [].use the 0b suffix. It tells the compiler that the value [suffixed with 0b] is a binary value and assigns it to the variable. Note: To print value in binary format, we use bin[] function.

Làm thế nào để bạn in một giá trị nhị phân trong Python?

Đưa ra số dương N, nhiệm vụ ở đây là in giá trị nhị phân của các số từ 1 đến n ...
Chia k cho 2 ..
Cuộc gọi đệ quy trên chức năng và in phần còn lại trong khi quay lại từ cuộc gọi đệ quy ..
Lặp lại các bước trên cho đến khi K lớn hơn 1 ..
Lặp lại các bước trên cho đến khi chúng ta đạt được n ..

Bài Viết Liên Quan

Chủ Đề