Hướng dẫn python string formatting with percent sign - định dạng chuỗi python với dấu phần trăm

Có một số cách khác nhau để định dạng chuỗi trong Python, một trong số đó được thực hiện bằng toán tử

>>> print("Mr. %s, the total is %.2f." % ("Jekyll", 15.53))
'Mr. Jekyll, the total is 15.33.'
1, được gọi là toán tử định dạng chuỗi (hoặc nội suy). Trong bài viết này, chúng tôi sẽ chỉ cho bạn cách sử dụng toán tử này để xây dựng chuỗi với chuỗi mẫu và các biến chứa dữ liệu của bạn.

Các nhà điều hành %

Cách làm việc này với văn bản đã được vận chuyển với Python ngay từ đầu, và nó còn được gọi là định dạng kiểu C, vì nó bắt nguồn từ ngôn ngữ lập trình C. Một mô tả khác cho nó là định dạng vị trí đơn giản.

Toán tử

>>> print("Mr. %s, the total is %.2f." % ("Jekyll", 15.53))
'Mr. Jekyll, the total is 15.33.'
1 cho trình thông dịch Python định dạng một chuỗi bằng cách sử dụng một tập hợp các biến đã cho, được đặt trong một tuple, theo toán tử. Một ví dụ rất đơn giản về điều này như sau:

'%s is smaller than %s' % ('one', 'two')

Trình thông dịch Python thay thế lần xuất hiện đầu tiên của

>>> print("Mr. %s, the total is %.2f." % ("Jekyll", 15.53))
'Mr. Jekyll, the total is 15.33.'
3 trong chuỗi bằng chuỗi đã cho "một" và
>>> print("Mr. %s, the total is %.2f." % ("Jekyll", 15.53))
'Mr. Jekyll, the total is 15.33.'
3 thứ hai bằng chuỗi "hai". Các chuỗi
>>> print("Mr. %s, the total is %.2f." % ("Jekyll", 15.53))
'Mr. Jekyll, the total is 15.33.'
3 này thực sự là những người giữ chỗ trong chuỗi "mẫu" của chúng tôi và chúng chỉ ra rằng các chuỗi sẽ được đặt ở đó.

Ví dụ đầu tiên, bên dưới chúng tôi chứng minh bằng cách sử dụng Python repling Cách in giá trị chuỗi và giá trị float:

>>> print("Mr. %s, the total is %.2f." % ("Jekyll", 15.53))
'Mr. Jekyll, the total is 15.33.'

Giống như

>>> print("Mr. %s, the total is %.2f." % ("Jekyll", 15.53))
'Mr. Jekyll, the total is 15.33.'
3 là một trình giữ chỗ cho các chuỗi,
>>> print("Mr. %s, the total is %.2f." % ("Jekyll", 15.53))
'Mr. Jekyll, the total is 15.33.'
7 là một trình giữ chỗ cho các số điểm nổi. ".2" trước
>>> print("Mr. %s, the total is %.2f." % ("Jekyll", 15.53))
'Mr. Jekyll, the total is 15.33.'
8 là những gì chỉ ra có bao nhiêu chữ số chúng ta muốn được hiển thị sau điểm thập phân.

Đây chỉ là hai ví dụ đơn giản về những gì có thể, và nhiều loại trình giữ chỗ hơn được hỗ trợ. Dưới đây là danh sách đầy đủ các loại trình giữ chỗ chi tiết hơn:

%c

Người giữ chỗ này đại diện cho một nhân vật duy nhất.

>>> print("The character after %c is %c." % ("B", "C"))
The character after B is C.

Cung cấp nhiều hơn một ký tự duy nhất là biến ở đây sẽ tăng một ngoại lệ.

%s

Người giữ chỗ này sử dụng chuyển đổi chuỗi thông qua

>>> print("Mr. %s, the total is %.2f." % ("Jekyll", 15.53))
'Mr. Jekyll, the total is 15.33.'
9 trước khi định dạng. Vì vậy, bất kỳ giá trị nào có thể được chuyển đổi thành một chuỗi thông qua
>>> print("Mr. %s, the total is %.2f." % ("Jekyll", 15.53))
'Mr. Jekyll, the total is 15.33.'
9 đều có thể được sử dụng ở đây.

>>> place = "New York"
>>> print("Welcome to %s!" % place)
Welcome to New York!

Ở đây, chúng tôi chỉ có một phần tử duy nhất được sử dụng trong định dạng chuỗi của chúng tôi và do đó chúng tôi không bắt buộc phải gửi phần tử trong một tuple giống như các ví dụ trước.

%i và %d

Những người Plachold này đại diện cho một số nguyên thập phân có chữ ký.

>>> year = 2019
>>> print("%i will be a perfect year." % year)
2019 will be a perfect year.

Vì người giữ chỗ này mong đợi một số thập phân, nó sẽ được chuyển đổi thành một nếu giá trị điểm nổi được cung cấp thay thế.

%u

Người giữ chỗ này đại diện cho một số nguyên thập phân không dấu.

%o

Người giữ chỗ này đại diện cho một số nguyên bát phân.

>>> number = 15
>>> print("%i in octal is %o" % (number, number))
15 in octal is 17
%x

Đại diện cho một số nguyên thập lục phân bằng cách sử dụng các chữ cái viết thường (A-F).

>>> number = 15
>>> print("%i in hex is %02x" % (number, number))
15 in hex is 0f

Kiểm tra hướng dẫn thực hành của chúng tôi, thực tế để học Git, với các thực hành tốt nhất, các tiêu chuẩn được công nghiệp chấp nhận và bao gồm bảng gian lận. Ngừng các lệnh git googling và thực sự tìm hiểu nó!

Bằng cách sử dụng tiền tố "02" trong trình giữ chỗ của chúng tôi, chúng tôi sẽ nói với Python in chuỗi hex hai ký tự.

%X

Đại diện cho một số nguyên thập lục phân bằng cách sử dụng các chữ cái viết hoa (A-F).

>>> number = 15
>>> print("%i in hex is %04X" % (number, number))
15 in hex is 000F

Và giống như ví dụ trước, bằng cách sử dụng tiền tố "04" trong trình giữ chỗ của chúng tôi, chúng tôi đang nói với Python in chuỗi HEX bốn nhân vật.

%e

Đại diện cho một ký hiệu theo cấp số nhân với chữ thường "E".

%E

Đại diện cho một ký hiệu theo cấp số nhân với chữ "E".

%f

Đại diện cho một số thực tế dấu phẩy động.

>>> price = 15.95
>>> print("the price is %.2f" % price)
the price is 15.95
%g

Phiên bản ngắn hơn của

>>> print("Mr. %s, the total is %.2f." % ("Jekyll", 15.53))
'Mr. Jekyll, the total is 15.33.'
7 và
>>> print("The character after %c is %c." % ("B", "C"))
The character after B is C.
2.

%G

Phiên bản ngắn hơn của

>>> print("Mr. %s, the total is %.2f." % ("Jekyll", 15.53))
'Mr. Jekyll, the total is 15.33.'
7 và
>>> print("The character after %c is %c." % ("B", "C"))
The character after B is C.
4.

Các giữ chỗ được hiển thị ở trên cho phép bạn định dạng chuỗi bằng cách chỉ định các loại dữ liệu trong các mẫu của bạn. Tuy nhiên, đây không phải là tính năng duy nhất của toán tử nội suy. Trong tiểu mục tiếp theo, chúng ta sẽ xem làm thế nào chúng ta có thể đệm các chuỗi của mình bằng khoảng trống bằng toán tử

>>> print("Mr. %s, the total is %.2f." % ("Jekyll", 15.53))
'Mr. Jekyll, the total is 15.33.'
1.

Sắp xếp đầu ra

Cho đến bây giờ, chúng tôi chỉ chỉ ra cách định dạng chuỗi văn bản bằng cách chỉ định trình giữ chỗ đơn giản. Với sự trợ giúp của một giá trị số bổ sung, bạn có thể xác định tổng không gian sẽ được dành riêng ở hai bên của một biến trong chuỗi đầu ra.

Ví dụ, giá trị của

>>> print("The character after %c is %c." % ("B", "C"))
The character after B is C.
6 dự trữ 10 ký tự, với khoảng cách thêm ở phía bên trái của trình giữ chỗ và giá trị của
>>> print("The character after %c is %c." % ("B", "C"))
The character after B is C.
7 đặt thêm không gian bên phải của máy Placholder. Nhân vật đệm duy nhất là một không gian, và không thể thay đổi.

>>> place = "London"
>>> print ("%10s is not a place in France" % place)  # Pad to the left
      London is not a place in France
>>> print ("%-10s is not a place in France" % place) # Pad to the right
London     is not a place in France

Xử lý các con số hoạt động theo cùng một cách:

>>> print("Mr. %s, the total is %.2f." % ("Jekyll", 15.53))
'Mr. Jekyll, the total is 15.33.'
0

Các chuỗi cắt ngắn và số làm tròn là đối tác để đệm. Hãy xem các số làm tròn trong Python để tìm hiểu thêm về các bẫy đang ẩn ở đây.

Sự kết luận

Trong bài viết này, chúng tôi đã thấy cách thức toán tử nội suy (còn gọi là định dạng) là một cách mạnh mẽ để định dạng chuỗi, cho phép bạn chỉ định kiểu dữ liệu, độ chính xác điểm nổi và thậm chí khoảng cách/đệm.

Làm thế nào để bạn đặt một dấu hiệu phần trăm vào một chuỗi python?

Sử dụng %% ký tự để thoát phần trăm dấu hiệu trong Python bằng cách sử dụng dấu hiệu phần trăm hai lần (%%), chúng ta có thể khắc phục lỗi.Tuy nhiên, nếu chúng tôi không sử dụng bất kỳ nhà xác định nào, điều này sẽ chỉ in dấu hiệu phần trăm chỉ hai lần.By using the percentage sign twice ( %% ), we can overcome the error. However, if we are not using any specifier, this will print the percentage sign twice only.

Làm thế nào để bạn thêm một phần trăm dấu trong định dạng chuỗi?

Bạn có thể làm điều này bằng cách sử dụng %% trong câu lệnh PRINTF.Ví dụ: bạn có thể viết printf (Hồi 10 %%) để có đầu ra xuất hiện dưới dạng 10%trên màn hình.using %% in the printf statement. For example, you can write printf(“10%%”) to have the output appear as 10% on the screen.

Làm thế nào để bạn làm %s trong Python?

Toán tử %s được đặt trong đó chuỗi sẽ được chỉ định.Số lượng giá trị bạn muốn nối vào một chuỗi phải tương đương với số được chỉ định trong ngoặc đơn sau khi toán tử % ở cuối giá trị chuỗi.. The number of values you want to append to a string should be equivalent to the number specified in parentheses after the % operator at the end of the string value.

Làm thế nào để bạn sử dụng %s %d trong python?

Chúng được sử dụng để định dạng chuỗi.%s hoạt động một trình giữ chỗ cho một chuỗi trong khi %D hoạt động như một trình giữ chỗ cho một số.Các giá trị liên quan của chúng được truyền qua thông qua một tuple bằng toán tử %.Lưu câu trả lời này.%s acts a placeholder for a string while %d acts as a placeholder for a number. Their associated values are passed in via a tuple using the % operator. Save this answer.