Hướng dẫn formatting lists in python - định dạng danh sách trong python

Nội dung chính

Nội dung chính

  • Định dạng chuỗi trong python bằng phương thức format
  • Khái niệm trường thay thế trong định dạng chuỗi python
  • Phân biệt các trường thay thế khi định dạng chuỗi trong python bằng phương thức format
  • Cách định dạng các trường thay thế trong phương thức format
  • Định dạng chuỗi với kiểu giá trị trong chuỗi | type()
  • Định dạng chuỗi trong python với độ dài chuỗi | width()
  • Định dạng chuỗi trong python bằng cách căn lề chuỗi| fill & align
  • Định dạng chuỗi trong python với dấu của số | sign( dấu )
  • Định dạng chuỗi trong python với dấu phân tách số | grouping_option
  • Định dạng chuỗi trong python với độ chính xác của phần phân số | precision ()
  • Định dạng chuỗi trong python với cách biểu diễn khác nhau của số | #
  • Tổng kết và thực hành

Nội dung chính

  • Định dạng chuỗi trong python bằng phương thức format
  • Khái niệm trường thay thế trong định dạng chuỗi python
  • Phân biệt các trường thay thế khi định dạng chuỗi trong python bằng phương thức format
  • Cách định dạng các trường thay thế trong phương thức format
  • Định dạng chuỗi với kiểu giá trị trong chuỗi | type()
  • Định dạng chuỗi trong python với độ dài chuỗi | width()
  • Định dạng chuỗi trong python bằng cách căn lề chuỗi| fill & align
  • Định dạng chuỗi trong python với dấu của số | sign( dấu )
  • Định dạng chuỗi trong python với dấu phân tách số | grouping_option
  • Định dạng chuỗi trong python với độ chính xác của phần phân số | precision ()
  • Định dạng chuỗi trong python với cách biểu diễn khác nhau của số | #
  • Tổng kết và thực hành
  • Định dạng chuỗi trong python bằng phương thức format
  • Khái niệm trường thay thế trong định dạng chuỗi python
  • Phân biệt các trường thay thế khi định dạng chuỗi trong python bằng phương thức format
  • Cách định dạng các trường thay thế trong phương thức format
  • Định dạng chuỗi với kiểu giá trị trong chuỗi | type()
  • Định dạng chuỗi trong python với độ dài chuỗi | width()
  • Định dạng chuỗi trong python bằng cách căn lề chuỗi| fill & align
  • Định dạng chuỗi trong python với dấu của số | sign( dấu )
  • Định dạng chuỗi trong python với dấu phân tách số | grouping_option
  • Định dạng chuỗi trong python với độ chính xác của phần phân số | precision ()
  • Định dạng chuỗi trong python với cách biểu diễn khác nhau của số | #
  • Tổng kết và thực hành

Khái niệm trường thay thế trong định dạng chuỗi pythonđịnh dạng chuỗi trong python bằng phương thức format(). Đây là phương thức được tích hợp từ Python 2.6, nhằm giúp việc định dạng chuỗi trong python đơn giản và trực quan hơn.

Cách định dạng các trường thay thế trong phương thức format

  • Hướng dẫn cách định dạng chuỗi trong python bằng phương thức format(). Đây là phương thức được tích hợp từ Python 2.6, nhằm giúp việc định dạng chuỗi trong python đơn giản và trực quan hơn.
  • Bạn cũng có thể tham khảo các cách định dạng chuỗi trong python khác như dưới đây:

Định dạng chuỗi trong python bằng phương thức format

Định dạng chuỗi trong python bằng toán tử %

Định dạng chuỗi trong python bằng chuỗi f

Để định dạng chuỗi trong python, chúng ta sử dụng phương thức format với cú pháp sau đây:trường thay thế (field) . Các đối số

Kiyoshi is 030 years old
9 của phương thức format() là các giá trị thay thế sẽ được dùng để thay thế các trường thay thế có trong
Kiyoshi is 030 years old
8.

pattern. format ( value1 , value2 , value3 , …)trường thay thế có trong định dạng chuỗi đó:

str_format = "{} {} {} {}".format('Kiyoshi','is','30','years old ')
print(str_format)


str_format = "{} is {} years old".format('Kiyoshi','30')
print(str_format)

Trong đó

Kiyoshi is 030 years old
8 là định dạng chuỗi chứa các trường thay thế (field) . Các đối số
Kiyoshi is 030 years old
9 của phương thức format() là các giá trị thay thế sẽ được dùng để thay thế các trường thay thế có trong
Kiyoshi is 030 years old
8.trường thay thế là gì cũng như cách định dạng chuỗi trong python thông qua định dạng trường thay thế sẽ được hướng dẫn chi tiết sau đây.

Khái niệm trường thay thế trong định dạng chuỗi python

Phân biệt các trường thay thế khi định dạng chuỗi trong python bằng phương thức formatphần bất biến và những phần có thể thay đổi giá trị.

Cách định dạng các trường thay thế trong phương thức formattrường thay thế trong python.

Định dạng chuỗi với kiểu giá trị trong chuỗi | type()trường thay thế nhận giá trị thay thế, sau đó định dạng giá trị thay thế theo dạng chỉ định, trước khi trả kết quả vào chuỗi.

Định dạng chuỗi trong python với độ dài chuỗi | width()

str_format = "{} is {:03d} years old".format('Kiyoshi',30)
print(str_format)

Định dạng chuỗi trong python bằng cách căn lề chuỗi| fill & align

Định dạng chuỗi trong python với dấu của số | sign( dấu )

Kiyoshi is 030 years old

Định dạng chuỗi trong python với dấu phân tách số | grouping_optiongiá trị thay thế trong đối số của phương thức format(), ngoài cách chỉ định trực tiếp giá trị như trên, chúng ta cũng có thể chỉ định giá trị thay thế thông qua biểu thức tính toán như ví dụ sau đây:

x = 1
y = 100
result = 'x + y = {}'.format(x + y)
print(result)

Định dạng chuỗi trong python với độ chính xác của phần phân số | precision ()

x + y = 101

Phân biệt các trường thay thế khi định dạng chuỗi trong python bằng phương thức format

Trong một chuỗi định dạng chứa nhiều trường thay thế, để phân biệt chúng, chúng ta cần gán số thứ tự hoặc là keyword cho chúng bên trong cặp dấu

x = 1
y = 100
result = 'x + y = {}'.format(x + y)
print(result)
3.Và nếu sử dụng số, chúng ta cần dùng các số nguyên lớn hơn hoặc bằng 0 liên tiếp như
x + y = 101
4.
Và nếu sử dụng số, chúng ta cần dùng các số nguyên lớn hơn hoặc bằng 0 liên tiếp như
x + y = 101
4.

Ví dụ, chúng ta phân biệt các trường thay thế trong chuỗi định dạng bằng số thứ tự như sau:

"name:{0} , old:{1}, address:{2}"

Chúng ta cần lấy các số liên tiếp để gán cho trường thay thế, ví dụ chúng ta không thể nhảy cóc và lấy các số như 0,2,3,5,..

Tuy nhiên chúng ta không nhất thiết phải gán đúng thứ tự tăng dần các số này cho trường thay thế, ví dụ cách gán dưới đây cũng OK.

"name:{1} , old:{0}, address:{2}"

Cần lưu ý là thứ tự trong trường thay thế có thể bị xáo trộn, nhưng thứ tự cảu các giá trị thay thế trong đối số của phương thức format() lại được mặc định tính theo đúng thứ tự tăng dần từ trái qua phải.Giá trị này sẽ được thay thế đúng với trường thay thế có số thứ tự tương ứng với nó, nên kể cả chúng ta thay đổi vị trí của trường giá trị, thì giá trị gán vào nó cũng sẽ không thay đổi.giá trị thay thế trong đối số của phương thức format() lại được mặc định tính theo đúng thứ tự tăng dần từ trái qua phải.
Giá trị này sẽ được thay thế đúng với trường thay thế có số thứ tự tương ứng với nó, nên kể cả chúng ta thay đổi vị trí của trường giá trị, thì giá trị gán vào nó cũng sẽ không thay đổi.

print( "name:{0} , old:{1}, address:{2}".format('Kiyoshi','30','tokyo'))


print( "address:{2} , name:{0} , old:{1}".format('Kiyoshi','30','tokyo'))

Trong trường hợp thứ tự của các trường thay thế giống với giá trị thay thế chúng, hãy lược bỏ số thứ tự của chúng như sau:

print( "name:{} , old:{}, address:{}".format('Kiyoshi','30','tokyo'))

Ngoài cách sử dụng số thứ tự để phân biệt trường thay thế, bạn cũng có thể sử dụng keyword để phân biết chúng như sau:

"name:{n} , old:{o}, address:{ad}"

Sau đó, chúng ta cũng cần chỉ định thêm keyword vào các giá trị gán trong đối số của phơng thức format là xong:

str_format = "{} is {:03d} years old".format('Kiyoshi',30)
print(str_format)
0

Cách định dạng các trường thay thế trong phương thức format

Ở các ví dụ trên, chúng ta đã tìm hiểu cách định dạng chuỗi bằng trường thay thế đơn giản nhất là dạng cặp dấu

x = 1
y = 100
result = 'x + y = {}'.format(x + y)
print(result)
3 hoặc là thêm số, keyword vào giữa cặp dấu đó.

Trong phần này, chúng ta sẽ tìm hiểu thêm các cách định dạng chuỗi trong python linh hoạt hơn thông qua tùy chỉnh định dạng các trường thay thế này.

Ví dụ, chúng ta định dạng chuỗi có 8 ký tự bằng cách dùng trường thay thế có định dạng

x + y = 101
6 hoặc
x + y = 101
7 hoặc
x + y = 101
8 như sau:

str_format = "{} is {:03d} years old".format('Kiyoshi',30)
print(str_format)
1

Kết quả:

str_format = "{} is {:03d} years old".format('Kiyoshi',30)
print(str_format)
2

Các tùy chọn định dạng phổ biến của trường thay thế như sau:

Định dạng chuỗi với kiểu giá trị trong chuỗi | type()

Chúng ta có thể định dạng kiểu giá trị sử dụng trong chuỗi bằng cú pháp sau đây:

{:

x + y = 101
9}

Trong đó

"name:{0} , old:{1}, address:{2}"
0 là ký hiệu biểu diễn kiểu giá trị sử dụng. Các kiểu giá trị này có thể là kiểu chuỗi, kiểu số nguyên, hoặc là kiểu số thực(float), và được biểu diễn với các ký hiệu trong bảng sau đây:kiểu chuỗi, kiểu số nguyên, hoặc là kiểu số thực(float), và được biểu diễn với các ký hiệu trong bảng sau đây:

TypeĐịnh dạng kiểu dữ liệuVí dụ
s Kiểu chuỗi {:s}
b Kiểu số nhị phân {:b}
c Kiểu ký tự số {:c}
d Kiểu số thập phân {:d}
o Kiểu số bát pâhn {:0}
x Kiểu số thập lục phân {:x}
X Kiểu số thập lục phân {:x}
X {:X} n
Kiểu số nguyên {:n} e
Kiểu mũ {:n} e
Kiểu mũ {:e} E
{:E} {:e} E
{:E} f Kiểu thập phân cố định
{:f} f Kiểu thập phân cố định
{:f} F {:F}

g

str_format = "{} is {:03d} years old".format('Kiyoshi',30)
print(str_format)
3

Kiểu làm tròn số

str_format = "{} is {:03d} years old".format('Kiyoshi',30)
print(str_format)
4

{:g}

str_format = "{} is {:03d} years old".format('Kiyoshi',30)
print(str_format)
5

G

str_format = "{} is {:03d} years old".format('Kiyoshi',30)
print(str_format)
6

{:G}

%

{:

"name:{0} , old:{1}, address:{2}"
1}

Kiểu phần

str_format = "{} is {:03d} years old".format('Kiyoshi',30)
print(str_format)
7

{:%}

Ví dụ chúng ta chỉ định kiểu dữ liệu của các giá trị thay thế là kiểu chuỗi như sau:

Hoặc là kiểu nhị phân hoặc thập lục phân:

Hoặc là kiểu mũ, thập phân cố định:

Hoặc biểu diễn số dưới dạng %:Định dạng chuỗi trong python với độ dài chuỗi | width()Ví dụ
s Kiểu chuỗi {:s}
b Kiểu số nhị phân {:b}
c Kiểu ký tự số {:c}
d Kiểu số thập phân {:d}

o

str_format = "{} is {:03d} years old".format('Kiyoshi',30)
print(str_format)
8

Kiểu số bát pâhn

str_format = "{} is {:03d} years old".format('Kiyoshi',30)
print(str_format)
9

{:0}
Về căn bản, các chỗ trống trong chuỗi được lấp đầy bởi ký tự trống

"name:{1} , old:{0}, address:{2}"
2.

Kiyoshi is 030 years old
0

Tuy nhiên chúng ta cũng có thể chỉ định ký tự ( số, chữ hoặc ký tự v.v..) thay cho ký tự trắng để dùng lấp chỗ, bằng cách sử dụng ký tự lấp chỗ kết hợp với ký tự căn lề, chẳng hạn như

"name:{1} , old:{0}, address:{2}"
3 trong ví dụ sau:

Kiyoshi is 030 years old
1

Chúng ta cũng có thể sử dụng ký tự để lấp chỗ trống như ví dụ sau:

Kiyoshi is 030 years old
2

Lưu ý là nếu dùng ký tự để lấp chỗ trống, chúng ta cần sử dụng ký tự lấp chỗ trống

"name:{0} , old:{1}, address:{2}"
9 kết hợp với ký tự căn lề
"name:{0} , old:{1}, address:{2}"
5.Nếu chỉ chỉ định
"name:{0} , old:{1}, address:{2}"
9 và bỏ qua
"name:{0} , old:{1}, address:{2}"
5 thì định dạng lấp chỗ trống sẽ không hoạt động như ví dụ sau:
Nếu chỉ chỉ định
"name:{0} , old:{1}, address:{2}"
9 và bỏ qua
"name:{0} , old:{1}, address:{2}"
5 thì định dạng lấp chỗ trống sẽ không hoạt động như ví dụ sau:

Kiyoshi is 030 years old
3
  • Về cách căn lề trong python, bạn cũng có thể sử dụng các phương thức khác như ljust(), center() hoặc rjust(). Hãy tìm hiểu chi tiết tại bài viết Căn lề trong python.

Định dạng chuỗi trong python với dấu của số | sign( dấu )

Tiếp theo chúng ta sẽ tìm hiểu cách định dạng chuỗi trong python với dấu của số. Định dạng này chỉ sử dụng cho số, nhằm biểu thị dấu âm và dương của số như sau:

Ký hiệuĐịnh dạngVí dụ
+ Định dạng số dương (có thể sử dụng cho cả số âm) {:+d}
- Định dạng số âm ( chỉ sử dụng cho số âm) {:-d}
"name:{1} , old:{0}, address:{2}"
2
Thêm khoảng trống vào số dương {: d}

Hãy cùng xem một số ví dụ sau đây:

Kiyoshi is 030 years old
4

Định dạng chuỗi trong python với dấu phân tách số | grouping_option

Tiếp theo chúng ta sẽ tìm hiểu về cách định dạng chuỗi trong python với dấu phân tách số. Định dạng này cho phép chúng ta tách và nhóm các số trong chuỗi lại bằng dấu chấm

"name:{1} , old:{0}, address:{2}"
9 ,dấu phẩy
print( "name:{0} , old:{1}, address:{2}".format('Kiyoshi','30','tokyo'))


print( "address:{2} , name:{0} , old:{1}".format('Kiyoshi','30','tokyo'))

0 hoặc dấu gạch dưới
print( "name:{0} , old:{1}, address:{2}".format('Kiyoshi','30','tokyo'))


print( "address:{2} , name:{0} , old:{1}".format('Kiyoshi','30','tokyo'))

1 cho dễ phân biệt các hàng trong số đó.

Hãy cùng xem một số ví dụ sau đây:

Kiyoshi is 030 years old
5

Định dạng chuỗi trong python với dấu phân tách số | grouping_option

Tiếp theo chúng ta sẽ tìm hiểu về cách định dạng chuỗi trong python với dấu phân tách số. Định dạng này cho phép chúng ta tách và nhóm các số trong chuỗi lại bằng dấu chấm

"name:{1} , old:{0}, address:{2}"
9 ,dấu phẩy
print( "name:{0} , old:{1}, address:{2}".format('Kiyoshi','30','tokyo'))


print( "address:{2} , name:{0} , old:{1}".format('Kiyoshi','30','tokyo'))

0 hoặc dấu gạch dưới
print( "name:{0} , old:{1}, address:{2}".format('Kiyoshi','30','tokyo'))


print( "address:{2} , name:{0} , old:{1}".format('Kiyoshi','30','tokyo'))

1 cho dễ phân biệt các hàng trong số đó.
Mặc định độ chính xác này là 6 chữ số. Chúng ta có thể chỉ định độ chính xác này bằng cách viết số chữ số đằng sau dấu chấm
"name:{1} , old:{0}, address:{2}"
9 như sau:

Kiyoshi is 030 years old
6

Định dạng chuỗi trong python với độ chính xác của phần phân số | precision ()

Tiếp theo chúng ta sẽ tìm hiểu về định dạng chuỗi trong python với độ chính xác của phần phân số. Định dạng này chỉ sử dụng cho số, nhằm biểu diễn độ chính xác của phần phân số ( bằng số chữ số của phần phân số).Mặc định độ chính xác này là 6 chữ số. Chúng ta có thể chỉ định độ chính xác này bằng cách viết số chữ số đằng sau dấu chấm

"name:{1} , old:{0}, address:{2}"
9 như sau:

Kiyoshi is 030 years old
7

Định dạng chuỗi trong python với cách biểu diễn khác nhau của số | #

Tiếp theo chúng ta sẽ tìm hiểu về định dạng chuỗi trong python với cách biểu diễn khác nhau của số. Định dạng này cho phép chúng ta chuyển cách biểu diễn của các số bát phân, thập phân sang các cách biểu diễn khác, ví dụ như thêm ký tự

print( "name:{0} , old:{1}, address:{2}".format('Kiyoshi','30','tokyo'))


print( "address:{2} , name:{0} , old:{1}".format('Kiyoshi','30','tokyo'))

3,
print( "name:{0} , old:{1}, address:{2}".format('Kiyoshi','30','tokyo'))


print( "address:{2} , name:{0} , old:{1}".format('Kiyoshi','30','tokyo'))

4,
print( "name:{0} , old:{1}, address:{2}".format('Kiyoshi','30','tokyo'))


print( "address:{2} , name:{0} , old:{1}".format('Kiyoshi','30','tokyo'))

5 vào đầu số:định dạng chuỗi trong python bằng phương thức format rồi. Bài này khá là dài, do đó bạn hãy chia nhỏ ra và học dần dần nhé.

Tổng kết và thực hành

Trên đây Kiyoshi đã hướng dẫn bạn cách định dạng chuỗi trong python bằng phương thức format rồi. Bài này khá là dài, do đó bạn hãy chia nhỏ ra và học dần dần nhé.

Và hãy cùng tìm hiểu những kiến thức sâu hơn về python trong các bài học tiếp theo.>> python cơ bản - lập trình python cho người mới bắt đầu>>09. chuỗi trong python

Hãy chia sẻ và cùng lan tỏa kiến thức lập trình Nhật Bản tại Việt Nam!

HOME>> python cơ bản - lập trình python cho người mới bắt đầu>>09. chuỗi trong python

Bài sau

Định dạng chuỗi trong python bằng toán tử định dạng