Python, giống như nhiều ngôn ngữ lập trình khác, hỗ trợ 'typecasting' hoặc chuyển đổi một đối tượng từ kiểu dữ liệu này sang kiểu dữ liệu khác. Bây giờ, chuyển đổi này có thể là Tiềm ẩn và Rõ ràng. Mặc dù Trình thông dịch Python tự động xử lý các Chuyển đổi ngầm định, nhưng các Chuyển đổi rõ ràng được thực hiện bởi người dùng với sự trợ giúp của các hàm dựng sẵn
Chuỗi là một phần tích hợp và quan trọng của bất kỳ ngôn ngữ lập trình nào. Do đó, có những lúc nhu cầu đánh máy các loại dữ liệu khác thành chuỗi phát sinh. Trước khi tiếp tục, hãy lướt qua chuỗi trong Python
Chuỗi trong Python là gì?
Một chuỗi được định nghĩa là một dãy ký tự, được đặt trong dấu ngoặc kép. Những ký tự này bao gồm mọi thứ. bảng chữ cái viết thường từ a-z, bảng chữ cái in hoa từ A-Z, số 0-9, tất cả các ký tự đặc biệt như #, $, & và khoảng trắng. Không giống như các ngôn ngữ lập trình khác, Python cho phép bạn sử dụng dấu ngoặc đơn [' '] hoặc dấu ngoặc kép [" "] để đặt chuỗi
Nhìn vào mã bên dưới để phân biệt giữa chuỗi và các loại dữ liệu khác [ở đây là các đối tượng]
#Strings in Python a = 'Favtutor' b = "1" c = 4 print[a," ", type[a]] print[b, " ", type[b]] print[c, " ", type[c]]
Phương thức type[] hiển thị kiểu đối tượng được tạo
đầu ra
Favtutor 1 4
Notice how the type[] returns for "1" while for 4. This happened because 1 was enclosed within [" "], which made "1" to be a string even though it's a number.
tostring[] trong Python là gì?
tostring[] là một phương thức để chuyển đổi các loại dữ liệu khác thành chuỗi. Nó trả về biểu diễn chuỗi của bất kỳ đối tượng nào. Chuỗi là các tính năng phổ biến và mỗi ngôn ngữ có cách xử lý riêng với chúng. Phương pháp này được cung cấp bởi các ngôn ngữ lập trình như Java.
Python không có phương thức có tên là tostring[], nhưng nó cung cấp các phương thức khác để thực hiện nhiệm vụ cho bạn. Chúng ta hãy xem xét các phương pháp này
6 Phương pháp để Chuyển đổi thành Chuỗi trong Python
Python cung cấp một số phương thức, tương đương với phương thức tostring[], để chuyển đổi các đối tượng khác thành chuỗi. Các phương pháp này đều có những ưu điểm và ứng dụng riêng. Hãy bắt đầu với danh sách dưới đây
01] Sử dụng phương thức str[]
Hàm str[] trong Python được coi là một phương thức thay thế cho phương thức tostring[] do các ngôn ngữ lập trình khác cung cấp. Nó là một chức năng tích hợp để chuyển đổi các đối tượng thành chuỗi. Chẳng hạn, hãy xem xét một biến chứa một giá trị nguyên, chẳng hạn như 10
var1 = 10 print[type[var1]]
Câu lệnh type[] sẽ giúp chúng ta xác định biến đó là kiểu số nguyên
đầu ra
Bây giờ, để chuyển đổi giá trị số nguyên này thành một chuỗi, tất cả những gì bạn cần làm là chuyển biến này vào hàm str[], dưới dạng str[variableName].
var1 = 10 print[var1, ' : ', type[var1]] # storing converted value into another variable var = str[var1] print[var + ' : ', type[var]] print[var1 + ' : ', type[var1]]
Lưu ý việc sử dụng toán tử '+' với biến chuỗi. Toán tử '+' được sử dụng để nối hai chuỗi với nhau. Tôi cũng đã sử dụng toán tử '+' với biến kiểu số nguyên để mô tả lỗi. đầu ra
10 : 10 : Traceback [most recent call last]: File ".\temp.py", line 7, in print[var1 + ' : ', type[var1]] TypeError: unsupported operand type[s] for +: 'int' and 'str'
Lưu ý rằng TypeError xảy ra do sử dụng 'int' thay vì 'str'
Áp dụng phương thức str[] trên Danh sách
Phương thức str[] cũng có thể được sử dụng trên Danh sách để chuyển đổi một đối tượng thành một chuỗi. Ví dụ -
# declaring a list a = [1, 2, 3, 4] #converting list to str[] b = str[a] print[b, ' : ', type[str[b]]]
đầu ra
[1, 2, 3, 4] :
Ngoài ra, lưu ý rằng việc sử dụng trực tiếp str[a] hoặc str[var] sẽ không thay đổi loại đối tượng thành chuỗi. Hàm str[] 'chuyển đổi' đối tượng thành Chuỗi và 'trả về' giá trị. Do đó, nó luôn cần một đối tượng tham chiếu để lưu trữ giá trị đó
02] Sử dụng phương pháp định dạng
Như đã thấy ở trên, mối quan tâm chính khi xử lý các chuỗi là khi in chúng. Python cung cấp một phương thức định dạng, nhận các biến và nhập chúng vào các chuỗi. Vì chúng trả về một chuỗi, nên chúng có thể được lưu trữ trong một biến hoặc được in trực tiếp bằng hàm print[]
Phương thức định dạng thường được sử dụng để dễ dàng hiển thị nhiều giá trị/biến [đối tượng không phải là Chuỗi]. Cú pháp cơ bản của phương thức định dạng là
"{}". định dạng [tên biến]
Hãy lấy một ví dụ để hiển thị việc sử dụng phương thức định dạng
________số 8_______
Tôi đã sử dụng phương thức định dạng trong khi gọi các biến [tất cả các đối tượng]
đầu ra
A list of Years is [2019, 2020, 2021, 2022]. The current year is: 2022
Lưu ý rằng việc sử dụng phương thức định dạng chỉ hỗ trợ khi hiển thị các chuỗi, nó không thực sự chuyển đổi một đối tượng thành một chuỗi cho đến khi nó được lưu trữ trong một biến khác. Lấy ví dụ dưới đây-
Favtutor 1 40
Dấu ngoặc '{}' biểu thị khoảng trống cho các giá trị biến được in. Hãy nhớ rằng tên biến ở định dạng[] phải tuân theo chuỗi dấu ngoặc '{}'
đầu ra
Favtutor 1 41
Áp dụng phương pháp định dạng đã không thực hiện bất kỳ thay đổi nào trong biến ban đầu. Thay vào đó, phương pháp này tạo một bản sao của nó
Ngoài ra, bạn cũng có thể lập chỉ mục các biến để sử dụng lại chúng mà không cần lặp lại mã
Ví dụ
Favtutor 1 42
Lưu ý rằng tương tự như việc lập chỉ mục của danh sách và mảng, ở đây việc lập chỉ mục cũng bắt đầu bằng 0
đầu ra
Favtutor 1 43
Bạn có thể quan sát việc sử dụng lại các biến bằng cách sử dụng số chỉ mục của chúng giữa các dấu ngoặc '{}'
03] Sử dụng phương thức __str__[]
Phương thức __str__[] là một phương thức có sẵn trong Python để chuyển đổi kiểu dữ liệu của các đối tượng khác thành Chuỗi. Hàm str[] và hàm print[] gọi bên trong phương thức __str__[] để thực hiện tác vụ. Phương thức này khi được gọi theo mặc định sẽ hiển thị một số thông tin về đối tượng. Hãy lấy một ví dụ
Favtutor 1 44
Tuy nhiên, phương thức __str__[] mặc định không chuyển đổi đối tượng thành chuỗi và thay vào đó hiển thị thông tin đối tượng ở định dạng con người có thể đọc được
đầu ra
Favtutor 1 45
Hãy chuyển sang một ví dụ khác về việc sử dụng phương thức __str__[]. Trong khi sử dụng phương thức này với lớp, chúng ta cần mô tả phương thức __str__[] để nó phục vụ mục đích.
Favtutor 1 46
Chúng ta có thể sử dụng bất kỳ phương pháp đánh máy nào khác [giả sử str[], format[] , f-string[] hoặc các phương thức khác] trong câu lệnh return. Điều này làm cho nó trở thành một phương thức lớp để trả về các chuỗi
đầu ra
Favtutor 1 47
04] Sử dụng f-string
chuỗi f là một dạng khác của phương thức định dạng. Chúng được các phiên bản Python mới áp dụng vì chúng dễ đọc và dễ đọc hơn phương thức định dạng. Trong phương thức định dạng, chúng tôi phải sử dụng '{}' thay cho các giá trị biến và đặt các biến theo trình tự bắt buộc một cách nghiêm ngặt. Tuy nhiên, đối với các chuỗi dài hơn có nhiều biến, thật khó để nhớ lại trình tự của các biến. Do đó f-string ra đời. Sử dụng chuỗi f, bạn có thể trực tiếp sử dụng biến trong chuỗi bằng cách đặt chúng giữa '{}'. Do đó, không cần phải nhớ đi nhớ lại trình tự này nhiều lần
Chúng ta hãy xem cú pháp của chuỗi f.
f' văn bản {variableName} văn bản {variableName}'
Ví dụ
Favtutor 1 48
Phương pháp này đã tăng khả năng đọc mã ở định dạng chuỗi trong Python
đầu ra
Favtutor 1 49
Ví dụ trên hiển thị cách sử dụng cơ bản của f-string. Để chuyển đổi các đối tượng thành chuỗi, chuỗi f có thể được sử dụng như-
var1 = 10 print[type[var1]]0
Kiểm tra xem các loại mạo từ và số khác nhau như thế nào do chuỗi f -
đầu ra
var1 = 10 print[type[var1]]1
05] Sử dụng phương thức repr[]
Phương thức repr[] trả về một chuỗi chứa biểu diễn được in của đối tượng. Nó lấy một đối tượng làm đầu vào và trả về một chuỗi. Nó không thực sự chuyển đổi đối tượng thành một chuỗi nhưng trả về một chuỗi ở định dạng có thể in được. Cú pháp của nó rất giống với str[], như
đại diện [tên biến]
Hãy cùng xem ví dụ dưới đây
var1 = 10 print[type[var1]]2
Bằng cách sử dụng phương thức repr[], kiểu dữ liệu của đối tượng thực tế, được truyền dưới dạng tham số, không thay đổi
đầu ra
var1 = 10 print[type[var1]]3
Có rất nhiều nhầm lẫn giữa phương thức repr[] và phương thức str[]. Tương tự, các phương thức __repr__[] và __str__[] cũng khá giống nhau nhưng có một chút khác biệt. Trong khi phương thức __str__[] trả về định dạng dễ đọc hơn, phương thức __repr__[] trả về định dạng chuỗi thân thiện với máy hơn
06] Sử dụng '%s'
Mặc dù không được công nhận rộng rãi, cách tiếp cận này là một phương tiện đơn giản để biểu diễn [chuyển đổi] mọi thứ thành chuỗi. Nếu bạn đã quen thuộc với "%s" trong các ngôn ngữ lập trình như C và C++, thì bạn sẽ biết rằng nó được dùng để biểu diễn các chuỗi [một dòng]. Nó sử dụng toán tử modulo [%] và tuân theo một cú pháp cơ bản
"%s" %tên biến
Ví dụ
var1 = 10 print[type[var1]]4
Tôi đã hiển thị cả hai ví dụ, tôi. e. gọi "%s" trực tiếp trong print[] và lưu trữ giá trị trong một biến. Ngoài số nguyên, "%s" cũng có thể được sử dụng với danh sách
đầu ra
var1 = 10 print[type[var1]]5
Ngoài các biến [đối tượng số nguyên], phương thức này cũng có thể được sử dụng với các đối tượng khác, như danh sách và từ điển
var1 = 10 print[type[var1]]6
Đây cũng là một phương pháp dễ dàng để biểu diễn các đối tượng thành các chuỗi trong khi xử lý việc in các đối tượng.
đầu ra
var1 = 10 print[type[var1]]7
Ngoài ra, đây là một số phương pháp để chuyển đổi int thành chuỗi trong python
Phần kết luận
Chuỗi là một phần quan trọng của phần mềm. Có nhiều bài toán yêu cầu chuyển kiểu dữ liệu [đối tượng] thành chuỗi. Python cung cấp nhiều phương thức để chuyển đối tượng thành chuỗi. Một số trong số họ được liệt kê ở trên. Các phương thức này trả về các biểu diễn chuỗi của các đối tượng này và cung cấp phương tiện để in nhiều biến một cách dễ dàng. Một số phương thức này cũng có thể được khai báo theo người dùng. Hãy thử các phương pháp này và tìm ra phương pháp tốt nhất cho bạn