Hướng dẫn dùng string formatter python
Nội dung chính Show
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, chúng ta sử dụng phương thức format với cú pháp sau đây: pattern. format ( value1 , value2 , value3 , …) Trong đó pattern là định dạng chuỗi chứa các trường thay thế (field) . Các đối số value 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 pattern. Trong ví dụ dưới đây, "{} {} {} {}" và "{} is {} years old" được gọi là các định dạng chuỗi pattern và các cặp {} được gọi là các trường thay thế có trong định dạng chuỗi đó: str_format = "{} {} {} {}".format('Kiyoshi','is','30','years old ') Để định dạng chuỗi trong python bằng phương thức format, bạn cần nắm vững 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 pythonTrong một định dạng chuỗi sẽ có những phần bất biến và những phần có thể thay đổi giá trị. Chúng ta đặt các phần có thể thay đổi giá trị giữa cặp dấu {} và gọi chúng là trường thay thế trong python. Các 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. Ví dụ: str_format = "{} is {:03d} years old".format('Kiyoshi',30) Ở ví dụ trên, định dạng chuỗi "{} is {:03d} years old" có phần bất biến là các ký tự is và years old. Hai ký tự còn lại là phần có thể thay đổi giá trị được biểu diễn bởi hai trường thay thế là {} và {:03d} . Các trường thay thế nhận các giá trị từ đối số của hàm format(), sau đó định dạng chúng theo dạng chỉ định và trả kết quả về chuỗi. Ví dụ trường thay thế {:03d} có dạng một số có 3 chữ số đã biến giá trị 30 thành 030 trong kết quả như sau: Kiyoshi is 030 years old Khi chỉ định giá 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 Giá trị của biểu thức tính tổng trong đối số của phương thức format() sẽ được thay thế vào trường thay thế, và in ra màn hình kết quả như sau: 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 formatTrong 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 {}. 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. print( "name:{0} , old:{1}, address:{2}".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="name:{n}
, old:{o}, address:{ad}".format(n="Kiyoshi",o=30,ad="Japan") 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 {} 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 {:8s} hoặc {0:8s} hoặc {name:8s} như sau: str1= "Name:[{:8s}], old:{:4d}".format("Ya", 18) Kết quả: Name: [Ya ], old: 18 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: {:type} Trong đó typle 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:
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: print("str1={:s}, str2={}".format("Lemon", "Apple")) Hoặc là kiểu nhị phân hoặc thập lục phân: print("str2={:b}, str3={:x}".format(20, 31)) Hoặc là kiểu mũ, thập phân cố định: print("str2={:e}".format(0.0752)) Hoặc biểu diễn số dưới dạng %: print("str4={:%}".format(0.348)) Định dạng chuỗi trong python với độ dài chuỗi | width()Chúng ta có thể định dạng số ký tự tối thiểu có trong chuỗi (độ dài tối thiểu của chuỗi) bằng cú pháp sau đây: {:width} Trong đó width là độ dài tối thiểu của chuỗi cần định dạng. Thông thường chúng ta định dạng độ dài tối thiểu của chuỗi kèm với định dạng kiểu giá trị, ví dụ {:10s} sẽ định dạng một chuỗi kiểu ký tự có tối thiểu 10 ký tự trong chuỗi. Hoặc {:5d} sẽ định dạng một chuỗi kiểu sổ có tối thiểu 5 ký tự trong đó. print("str1 = [{:10s}]".format("Lemon")) Định dạng chuỗi trong python bằng cách căn lề chuỗi| fill & alignChúng ta có thể định dạng chuỗi trong python bằng cách căn lề chuỗi với cú pháp sau đây: {:align width} Trong đó align là định dạng căn lề và width là độ dài tối thiểu của chuỗi cần định dạng. Chúng ta có thể sử dụng các định dạng căn lề từ trong bảng sau đây:
Ví dụ, chúng ta định dạng chuỗi trong python với kiểu căn trái, căn phải và căn giữa chuỗi như sau:
Cần lưu ý là nếu chúng ta không chỉ định width thì định dạng căn lề algin không sử dụng được. Trong ví dụ sau, định dạng căn lề không hoạt động bởi chúng ta không chỉ định độ rộng tối thiểu của chuỗi: print("số=[{:>7d}]".format(123)) Sau đây, chúng ta sẽ xem xét về định dạng
chuỗi với cách lấp chỗ trống trong chuỗi. print("số=[{:7d}]".format(123)) 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ư {:07d} trong ví dụ sau: print("số=[{:07d}]".format(123)) Chúng ta cũng có thể sử dụng ký tự để lấp chỗ trống như ví dụ sau: print("số={:*<7d}".format(123)) 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 fill kết hợp với ký tự căn lề align. print("số=[{:-7d}]".format(123))
Đị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:
Hãy cùng xem một số ví dụ sau đây: print("số dương={:+d}, số âm={:+d}".format(72, -72)) Định dạng chuỗi trong python với dấu phân tách số | grouping_optionTiế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 . ,dấu phẩy , hoặc dấu gạch dưới _ cho dễ phân biệt các hàng trong số đó. Hãy cùng xem một số ví dụ sau đây: print("số={:,d}".format(1234567)) Đị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ố). print("số={:f}".format(1.2345)) Đị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ự 0b,0o,0x vào đầu số: print("số={:b}, số ở định dạng khác={:#b}".format(10,
10)) Tổng kết và thực hànhTrê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. Viết bởi Kiyoshi. Đã đăng ký bản quyền tác giả tại <a title="Bạn được tự do chia sẻ bài viết nhưng phải để lại đường link bài viết từ laptrinhcanban.com. Bạn không được sử dụng tài liệu cho mục đích thương mại. Không được phép chỉnh sửa nội dung được phát hành trên website của chúng tôi" style="color:#fff;background-color:silver" rel="license noopener" target="_blank" href="https://creativecommons.org/licenses/by-nc-nd/4.0/">Creativecommons</a> và <a title="Bạn được tự do chia sẻ bài viết nhưng phải để lại đường link bài viết từ laptrinhcanban.com. Bạn không được sử dụng tài liệu cho mục đích thương mại. Không được phép chỉnh sửa nội dung được phát hành trên website của chúng tôi" style="color:#fff;background-color:silver" target="_blank" rel="noopener" href="https://www.dmca.com/Protection/Status.aspx?ID=1631afcd-7c4a-467d-8016-402c5073e5cd" class="dmca-badge">DMCA</a><script src="https://images.dmca.com/Badges/DMCABadgeHelper.min.js"> Bài viết liên quanHã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 Viết Liên QuanQuảng CáoCó thể bạn quan tâmToplist được quan tâm#1
Top 7 sự tích hồ gươm - ngữ văn lớp 6 20237 tháng trước#2
Top 7 gdcd 6 bài 1 kết nối tri thức 20237 tháng trước#3
Top 7 ý nghĩa của xây dựng gia đình văn hóa 20237 tháng trước#4
Top 6 mẫu hợp đồng mượn đất làm nhà xưởng 20237 tháng trước#5
Top 3 tổng tài biến thái tôi yêu anh tập 27 20237 tháng trước#6
Top 6 kết thực phim mỹ nhân vô lệ 20237 tháng trước#7
#8
Top 8 đề tài và chủ de của tác phẩm tắt đèn 20237 tháng trước#9
Top 5 tiểu sử của thầy thích pháp hòa 20237 tháng trướcQuảng cáoXem NhiềuGăng tay cao su phù hợp với hóa chất gì năm 20242 ngày trướcBảo vệ trẻ em thuộc lĩnh vực của bộ nào năm 20243 ngày trướcLỗi không hiển thị sản phẩm trên mobile năm 20246 ngày trướcCơ sở dữ liệu quản lý hàng hóa năm 20241 tuần trướcSửa lỗi cơ sỏ dữ liệu trên mamp năm 20241 tuần trướcĐi hàn quốc vào mùa nào đẹp nhất năm 20245 ngày trướcQuảng cáoChúng tôiTrợ giúpBản quyền © 2021 Học Tốt Inc.
|