Một chuỗi trong Python là một danh sách các ký tự được sắp xếp theo thứ tự. Một số thao tác quan trọng có thể được thực hiện trên chuỗi và một trong số đó là đảo ngược chuỗi. Đảo ngược một chuỗi có thể không có các trường hợp sử dụng trực tiếp, tuy nhiên, có một số trường hợp sử dụng gián tiếp, chẳng hạn như tìm xem một chuỗi có phải là một đối xứng hay không, v.v.
Các ngôn ngữ lập trình như Java, C++ và JavaScript có các hàm trực tiếp được gọi là đảo ngược [] được gọi trên các chuỗi, để đảo ngược chúng một cách nhanh chóng và hiệu quả. Thật không may, Python không có chức năng dựng sẵn để đảo ngược chuỗi.
Tuy nhiên, có một số cách giải quyết khác mà bạn có thể sử dụng để đảo ngược chuỗi trong Python. Trong hướng dẫn toàn diện này, bạn sẽ xem qua các kỹ thuật khác nhau được thực hiện để làm điều tương tự. Những kỹ thuật này sẽ yêu cầu kiến thức về các khái niệm Python khác như cắt, hàm, đệ quy, vòng lặp, ngăn xếp, v.v.
Vì vậy, không có gì khó chịu, hãy thảo luận từng cái một
Khóa đào tạo Python
Tìm hiểu về thao tác dữ liệu trong Python Khám phá khóa họcSử dụng vòng lặp For đơn giản
Các vòng lặp trong Python cho phép bạn lặp qua các lần lặp như danh sách, chuỗi, từ điển, v.v. và thực hiện bất kỳ loại thao tác nào trên từng phần tử. Bạn có thể sử dụng vòng lặp for trong Python để đảo ngược chuỗi. Nhìn vào đoạn mã dưới đây để rõ ràng hơn
def ReverseString[s]
đảo ngượcString = ""
cho char trong s
Chuỗi đảo ngược = char + Chuỗi đảo ngược
trả lại chuỗi bị đảo ngược
s = "Học đơn giản"
print["Chuỗi ban đầu là - ", s]
print["Chuỗi đảo ngược là - ", ReverseString[s]]
Trong chương trình trên, bạn đã xem xét việc tạo một hàm đơn giản nhận đầu vào là một chuỗi. Và sau đó trả lại chuỗi đảo ngược làm đầu ra. Bên trong hàm, bạn đã thấy cách sử dụng vòng lặp for đơn giản, một cách thông minh. Đầu tiên, bạn đã tạo một biến và khởi tạo nó thành một chuỗi rỗng. Sau đó, bạn đã thấy việc sử dụng vòng lặp for để lặp qua từng ký tự của chuỗi đầu vào và nối từng ký tự với đầu chuỗi. Hãy hiểu nó từng bước một
Ban đầu, biến 'reversedString' trống
Chuỗi đảo ngược hiện tại
Nhân vật hiện tại
Chuỗi đảo ngược mới = Ký tự hiện tại + Chuỗi đảo ngược hiện tại
“”
S
S
S
i
Là
Là
m
miS
miS
p
chiều
chiều
l
lpmiS
lpmiS
i
ilpmiS
ilpmiS
l
lilpmiS
lilpmiS
e
elilpmiS
elilpmiS
a
aelilpmiS
aelilpmiS
r
raelilpmiS
raelilpmiS
n
nraelilpmiS
Hãy xác minh đầu ra bằng cách thực thi mã
Bạn có thể thấy rằng chúng tôi có đầu ra phù hợp
Đảo ngược chuỗi trong Python bằng đệ quy
Đệ quy là một khái niệm lập trình quan trọng bạn cần nắm vững. Có một số cách sử dụng đệ quy và thậm chí bạn có thể sử dụng nó để đảo ngược một chuỗi trong Python. Hãy xem làm thế nào để làm như vậy
def ReverseString[inputString]
nếu len[inputString] == 0
trả về chuỗi đầu vào
khác
trả về ReverseString[inputString[1. ]] + chuỗi đầu vào[0]
inputString = "Đơn giản hóa"
print["Chuỗi trước khi đảo chiều là. ", chuỗi đầu vào]
print["Chuỗi sau khi đảo chiều là. ", ReverseString[inputString]]
Ở trên, chương trình đã tạo một hàm lấy đầu vào ban đầu làm chuỗi đầu vào. Để làm được điều đó, nó đã tạo ra điều kiện cơ bản rằng - nếu chuỗi hiện tại có độ dài bằng 0, thì bạn có thể trả về chuỗi hiện tại vì sau đó nó sẽ bị đảo ngược hoàn toàn. Và đối với phần khác, bạn đã gọi đệ quy hàm tương tự trên phần còn lại của chuỗi ngoại trừ ký tự đầu tiên và sau đó nối nó với ký tự đầu tiên. Hãy xác minh đầu ra
Bạn có thể thấy rằng chúng tôi đã đảo ngược chuỗi thành công bằng cách sử dụng đệ quy
Đảo ngược chuỗi trong Python bằng ngăn xếp
Ngăn xếp là một cấu trúc dữ liệu cho phép thao tác bật và đẩy trên nó. Hãy coi nó như một chồng sách. Bạn chỉ có thể lấy hoặc bật một cuốn sách từ trên cùng và thậm chí chỉ đẩy lùi hoặc giữ một cuốn sách ở trên cùng của chồng sách. Do đó, nó được coi là LIFO [Last In First Out]. Bạn có thể sử dụng ngăn xếp để đảo ngược chuỗi trong Python. Trên thực tế, đệ quy cũng sử dụng ngăn xếp trong nội bộ. Xem xét chương trình dưới đây để hiểu rõ hơn
def đẩy [ngăn xếp, vật phẩm]
cây rơm. nối thêm [mục]
def pop [ngăn xếp]
if[len[stack]==0]
trở lại
ngăn xếp trở lại. nhạc pop[]
def ReverseString[chuỗi]
ngăn xếp = []
cho char trong chuỗi
đẩy [ngăn xếp, ký tự]
chuỗi = ""
trong khi [len [ngăn xếp]. =0]
chuỗi = chuỗi + pop [ngăn xếp]
chuỗi trả về
chuỗi = "Đơn giản hóa"
print["Chuỗi trước khi đảo chiều là. ", chuỗi]
print["Chuỗi sau khi đảo chiều là. ", ReverseString[chuỗi]]
Trong chương trình trên, bạn đã thực hiện các thao tác đẩy và bật tiêu chuẩn của ngăn xếp. Sau đó, bạn đã tạo một hàm khác có tên là ReverseString. Trong hàm này, bạn đã lấy chuỗi đầu vào làm tham số, khởi tạo một ngăn xếp trống và đẩy từng ký tự của chuỗi vào bên trong ngăn xếp. Tiếp theo, bạn đã thấy cách làm cho chuỗi rỗng. Sau đó, bạn chạy một vòng lặp while và bật từng phần tử của ngăn xếp cho đến khi nó trống và nối ký tự đã bật trở lại chuỗi. Cuối cùng, bạn đã trả về chuỗi kết quả, là chuỗi đảo ngược của chuỗi ban đầu
Hãy xác minh đầu ra bằng cách chạy chương trình
Sử dụng phương thức Reverse[] để đảo ngược chuỗi trong Python
Bạn cũng có thể sử dụng phương thức đảo ngược trong Python để trả về một đối tượng bị đảo ngược hoặc trình vòng lặp của chuỗi đầu vào. Điều duy nhất bạn cần làm là thực hiện thao tác nối bổ sung trên đối tượng đảo ngược kết quả và trả về chuỗi mới. Hãy cùng xem chương trình dưới đây
def ReverseString[inputString]
đầu vàoString = "". tham gia [đảo ngược [inputString]]
trả về chuỗi đầu vào
inputString = "Đơn giản hóa"
print["Chuỗi trước khi đảo chiều là. ", chuỗi đầu vào]
print["Chuỗi sau khi đảo chiều là. ", ReverseString[inputString]]
Chương trình được tạo ở trên có một hàm lấy chuỗi đầu vào làm tham số, sau đó bạn đã sử dụng phương thức Reverse[] trên chuỗi đầu vào để trả về một trình vòng lặp hoặc đối tượng bị đảo ngược. Khi đó chương trình đã sử dụng. phương thức join[] với dấu tách trống để nối các phần tử của trình vòng lặp đảo ngược. Điều này sẽ cung cấp cho bạn chuỗi đảo ngược cuối cùng. Hãy chạy chương trình và xem đầu ra
Cắt chuỗi để đảo ngược chuỗi trong Python
Bạn cũng có thể sử dụng một phương pháp phức tạp khác để đảo ngược chuỗi trong Python. Đây là phương pháp dễ nhất và ngắn nhất để đảo ngược một chuỗi. Bạn sẽ sử dụng kỹ thuật lát cắt mở rộng bằng cách đặt giá trị bước là -1 mà không có giá trị bắt đầu và kết thúc.
Cú pháp chung của lát cắt mở rộng trong Python là [bắt đầu, dừng, bước]. Nếu bạn không đề cập đến bất kỳ giá trị bắt đầu nào, nó sẽ mặc định là 0, là phần đầu của chuỗi. Và nếu bạn không đề cập đến bất kỳ giá trị dừng nào, nó sẽ mặc định ở cuối chuỗi. Và -1 là giá trị bước có nghĩa là chuỗi cần được duyệt theo cách đảo ngược. Vì vậy, nó bắt đầu từ cuối chuỗi và dừng ở đầu, cho chúng ta một chuỗi đảo ngược
Hãy cùng xem chương trình dưới đây
def ReverseString[inputString]
đầu vàoString = đầu vàoString[. -1]
trả về chuỗi đầu vào
inputString = "Chào mừng đến với Simplilearn"
print["Chuỗi trước khi đảo chiều là. ", chuỗi đầu vào]
print["Chuỗi sau khi đảo chiều là. ", ReverseString[inputString]]
Trong chương trình trên, bạn đã sử dụng phép cắt chuỗi với giá trị bước -1 để đảo ngược chuỗi. Hãy xác minh đầu ra
Bạn có thể thấy rằng bạn đã đảo ngược chuỗi thành công bằng cách sử dụng kỹ thuật cắt chuỗi mở rộng
Đảo ngược một chuỗi bằng cách chuyển đổi nó thành một danh sách
Một cách khác để đảo ngược một chuỗi là trước tiên chuyển đổi nó thành một danh sách và sau đó đảo ngược danh sách bằng cách sử dụng danh sách. phương pháp đảo ngược []. Sau đó, bạn có thể sử dụng danh sách. phương thức join[] để chuyển đổi nó trở lại chuỗi. Tuy nhiên, phương pháp này là phương pháp kém hiệu quả nhất. Hãy xem chương trình dưới đây
def ReverseString[inputString]
myList = danh sách [chuỗi đầu vào]
danh sách của tôi. đảo ngược[]
đầu vàoString = "". tham gia [myList]
trả về chuỗi đầu vào
inputString = "Chào mừng đến với Simplilearn"
print["Chuỗi trước khi đảo chiều là. ", chuỗi đầu vào]
print["Chuỗi sau khi đảo chiều là. ", ReverseString[inputString]]
Ở đây, bạn có thể thấy rằng bên trong hàm ReverseString, trước tiên bạn đã chuyển đổi chuỗi thành một danh sách, sau đó bạn sẽ thấy cách sử dụng danh sách. Reverse[] để đảo ngược danh sách và sau đó nối lại bằng cách sử dụng danh sách. phương thức tham gia []. Hãy xác minh đầu ra
Mong muốn chuyển sang lĩnh vực lập trình?
kết thúc
Trong hướng dẫn toàn diện này, bạn đã xem xét một số phương pháp để đảo ngược chuỗi trong Python, bao gồm các ví dụ thực tế của từng phương pháp. Bạn đã biết cách sử dụng phương thức ngăn xếp, vòng lặp for, đệ quy, cắt, đảo ngược [] và thậm chí chuyển đổi nó thành danh sách để đảo ngược chuỗi. Tuy nhiên, hiệu quả nhất, nhanh chóng và dễ nhớ nhất là phương pháp cắt chuỗi, chỉ đơn giản là một lớp lót.
Nếu bạn đang tìm cách nâng cao sự nghiệp của mình và trở thành chuyên gia về Python, bạn có thể muốn khám phá Khóa học cấp chứng chỉ Python của Simplilearn. Khóa học này cung cấp một chương trình giảng dạy toàn diện giúp bạn tìm hiểu các nguyên tắc cơ bản của python và hơn thế nữa ngoài các chủ đề bao gồm thao tác dữ liệu, tập lệnh shell, câu lệnh có điều kiện, Django, v.v. Chương trình này là điểm khởi đầu lý tưởng cho bất kỳ ai muốn nắm vững ngôn ngữ Python ngày nay
Chúng tôi hy vọng rằng bạn thích bài viết này và giờ đây bạn đã được trang bị đầy đủ với nhiều cách để đảo ngược một chuỗi trong Python. Nếu bạn có bất kỳ câu hỏi nào cho chúng tôi, hãy để lại trong phần bình luận của bài viết này. Các chuyên gia của chúng tôi sẽ sớm liên hệ lại với bạn
học tập vui vẻ
Thông tin về các Tác giả
Ravikiran A S làm việc với Simplilearn với tư cách là Nhà phân tích nghiên cứu. Anh ấy là một người đam mê nhiệt tình, luôn săn lùng những công nghệ mới nhất. Anh ấy thành thạo Ngôn ngữ lập trình Java, Dữ liệu lớn và các Khung dữ liệu lớn mạnh mẽ như Apache Hadoop và Apache Spark