Trong bài viết này, chúng ta sẽ tìm hiểu string trong ngôn ngữ lập trình là gì, cách tạo chúng và công dụng của chúng. Hơn nữa, chúng ta sẽ nghiên cứu các toán tử khác nhau để so sánh các chuỗi trong python. Cuối cùng, chúng ta sẽ nghiên cứu một số so sánh chuỗi Python một cách ngắn gọn cùng với ví dụ và đầu ra mã python của nó. Vậy hãy bắt đầu Show
Chuỗi là gì?Một chuỗi thường là một dãy các ký tự. Một ký tự là một biểu tượng đơn giản. Ví dụ: trong Ngôn ngữ tiếng Anh, chúng tôi có sẵn 26 ký tự. Hệ thống máy tính không hiểu các ký tự và do đó, xử lý các số nhị phân. Mặc dù chúng ta có thể nhìn thấy các ký tự trên màn hình điều khiển của mình, nhưng bên trong nó được lưu trữ và thao tác dưới dạng kết hợp của 0 và 1. Việc chuyển đổi các ký tự và số nhị phân được gọi là mã hóa và ngược lại được gọi là giải mã. Một số bảng mã phổ biến là ASCII và Unicode. Trong ngôn ngữ lập trình Python, một chuỗi là một dãy các ký tự Unicode Toán tử so sánh chuỗi PythonTrong ngôn ngữ python, chúng ta có thể so sánh 2 chuỗi như nhận biết 2 chuỗi có tương đương với nhau hay không, thậm chí chuỗi nào lớn hơn hay nhỏ hơn nhau. Hãy để chúng tôi kiểm tra một số toán tử so sánh chuỗi được sử dụng cho mục đích này bên dưới
Kiểm tra chuỗi bằng trong PythonTrong lập trình python, chúng ta có thể kiểm tra xem các chuỗi có bằng nhau hay không bằng cách sử dụng “==” hoặc bằng cách sử dụng “. chức năng __eq__” Thí dụ s1 = 'String' s2 = 'String' s3 = 'string' # case sensitive equals check if s1 == s2: print('s1 and s2 are equal.') if s1.__eq__(s2): print('s1 and s2 are equal.') Ở đây, chúng tôi kiểm tra chuỗi s1 và s2 xem chúng có bằng nhau hay không, sau đó sử dụng câu lệnh điều kiện “if” với sự kết hợp của toán tử bằng Đầu ra của mã trên là như đưa ra dưới đây s1 và s2 bằng nhau s1 và s2 bằng nhau Còn so sánh không phân biệt chữ hoa chữ thường thì sao?Trong khi kiểm tra sự bằng nhau trong chuỗi đôi khi chúng ta muốn bỏ qua trường hợp của chuỗi trong khi so sánh. Vì vậy, như một giải pháp cho vấn đề này, chúng ta có thể sử dụng hàm fold(), Lower() hoặc Upper() để bỏ qua trường hợp so sánh đẳng thức chuỗi không phân biệt chữ hoa chữ thường s1 = 'String' s2 = 'String' s3 = 'string' if s1.casefold() == s3.casefold(): print(s1.casefold()) print(s3.casefold()) print('s1 and s3 are equal in case-insensitive comparison') if s1.lower() == s3.lower(): print(s1.lower()) print(s3.lower()) print('s1 and s3 are equal in case-insensitive comparison') if s1.upper() == s3.upper(): print(s1.upper()) print(s3.upper()) print('s1 and s3 are equal in case-insensitive comparison') Đầu ra của mã trên là như đưa ra dưới đây sợi dây sợi dây s1 và s3 bằng nhau trong so sánh không phân biệt chữ hoa chữ thường sợi dây sợi dây s1 và s3 bằng nhau trong so sánh không phân biệt chữ hoa chữ thường SỢI DÂY SỢI DÂY s1 và s3 bằng nhau trong so sánh không phân biệt chữ hoa chữ thường
Sự kết luậnVì vậy, trong bài viết này, chúng tôi đã nghiên cứu cách so sánh các chuỗi trong ngôn ngữ lập trình python. Ngoài ra, chúng tôi đã nghiên cứu một số toán tử so sánh chuỗi và kiểm tra sự bằng nhau của chuỗi. Thậm chí chúng tôi đã kiểm tra so sánh không phân biệt chữ hoa chữ thường Một trong những hoạt động phổ biến nhất mà các lập trình viên sử dụng trên chuỗi là kiểm tra xem một chuỗi có chứa một số chuỗi khác không Ví dụ: nếu bạn đến với Python từ Java, bạn có thể đã sử dụng phương thức chứa để kiểm tra xem một số chuỗi con có tồn tại trong một chuỗi khác không Trong Python, có hai cách để đạt được điều này Ngày thứ nhất. Sử dụng toán tử inCách dễ nhất là thông qua toán tử in của Python. Hãy xem ví dụ này
Như bạn có thể thấy, toán tử in trả về True khi chuỗi con tồn tại trong chuỗi Nếu không, nó trả về false Phương pháp này rất đơn giản, rõ ràng, dễ đọc và thành ngữ Thứ hai. Sử dụng phương pháp tìmMột phương thức khác mà bạn có thể sử dụng là phương thức find của chuỗi Không giống như toán tử in được ước tính thành giá trị boolean, phương thức find trả về một số nguyên. Số nguyên này về cơ bản là chỉ số của phần đầu của chuỗi con nếu chuỗi con tồn tại, nếu không thì -1 được trả về Hãy xem hoạt động của phương thức find .
Một điều thú vị về phương pháp này là bạn có thể tùy chọn chỉ định chỉ mục bắt đầu và chỉ mục kết thúc để giới hạn tìm kiếm của mình trong phạm vi Ví dụ
Lưu ý cách -1 được trả về cho “Messi” vì bạn đang giới hạn tìm kiếm của mình trong chuỗi chỉ giữa các chỉ số 5 và 25. Bảng cheat Python 3 cho người mới bắt đầuTải xuống một bảng cheat toàn diện dành cho người mới bắt đầu với các ví dụ mã mở rộng bao gồm tất cả các chủ đề mà bạn cần tìm hiểu Một số nội dung nâng caoGiả sử trong một giây rằng Python không có các hàm hoặc phương thức tích hợp sẵn để kiểm tra xem một chuỗi có chứa một chuỗi khác không Làm thế nào bạn sẽ viết một chức năng để làm điều đó? Chà, một cách dễ dàng là dùng vũ lực bằng cách kiểm tra xem chuỗi con có tồn tại bắt đầu từ mọi vị trí có thể có trong chuỗi gốc hay không Đối với các chuỗi lớn hơn, quá trình này có thể rất chậm Có các thuật toán tốt hơn để tìm kiếm chuỗi Tôi đánh giá cao bài viết này từ TopCoder nếu bạn muốn tìm hiểu thêm và tìm hiểu sâu hơn về các thuật toán tìm kiếm chuỗi Để biết thêm thông tin về các thuật toán tìm kiếm chuỗi khác không được đề cập trong bài viết trước, trang wikipedia này rất hay Nếu bạn xem qua các bài viết trước và nghiên cứu chúng, câu hỏi tiếp theo của bạn sẽ là “Python thực sự sử dụng thuật toán nào?” Công dụng của check() trong Python là gì?Để kiểm tra xem một cụm từ hoặc ký tự nhất định có trong một chuỗi hay không , chúng ta có thể sử dụng từ khóa in hoặc not in.
Làm cách nào để kiểm tra chuỗi tồn tại hay không trong Python?Sử dụng find() để kiểm tra xem một chuỗi có chứa chuỗi con khác hay không
. Hàm này trả về vị trí chỉ mục đầu tiên nơi chuỗi con được tìm thấy, nếu không thì trả về -1. |