Hướng dẫn how do i compare multiple strings in python? - làm cách nào để so sánh nhiều chuỗi trong python?
Tôi đang cố gắng so sánh một chuỗi gọi là 4 với nhiều chuỗi có thể để kiểm tra xem nó có hợp lệ không. Các chuỗi hợp lệ là: Show
Có một cách hiệu quả để làm điều này ngoài:
hỏi ngày 27 tháng 7 năm 2011 lúc 0:35Jul 27, 2011 at 0:35 3 Nếu, OTOH, danh sách các chuỗi của bạn thực sự dài một cách gớm ghiếc, hãy sử dụng một bộ:
Trung bình kiểm tra ngăn chặn trong một bộ là O (1).
Đã trả lời ngày 27 tháng 7 năm 2011 lúc 0:49Jul 27, 2011 at 0:49
Pillmuncherpillmuncherpillmuncher 9,9642 Huy hiệu vàng34 Huy hiệu bạc33 Huy hiệu đồng2 gold badges34 silver badges33 bronze badges 4 Trừ khi danh sách các chuỗi của bạn dài một cách gớm ghiếc, một cái gì đó như thế này có lẽ là tốt nhất:
Đã trả lời ngày 27 tháng 7 năm 2011 lúc 0:37Jul 27, 2011 at 0:37
4 Để kiểm tra hiệu quả nếu một chuỗi có khớp với một trong nhiều không, hãy sử dụng điều này:
5S được băm, các bộ sưu tập các mặt hàng không được tối ưu hóa để xác định xem một mặt hàng nhất định có ở trong đó hay không.Đã trả lời ngày 27 tháng 7 năm 2011 lúc 0:49Jul 27, 2011 at 0:49
PillmuncherpillmuncherColin Valliant 9,9642 Huy hiệu vàng34 Huy hiệu bạc33 Huy hiệu đồng1 gold badge13 silver badges20 bronze badges 3 Python bất kỳ () hàmPython bất kỳ () chức năng chấp nhận có thể lặp lại (danh sách, tuple, từ điển, v.v.) như một đối số và trả về đúng nếu bất kỳ yếu tố nào trong ITable là đúng, nếu không nó sẽ trả về sai. Nếu đối tượng có thể xóa, hàm bất kỳ () sẽ trả về sai.any() function accepts iterable (list, tuple, dictionary etc.) as an argument and return true if any of the element in iterable is true , else it returns false . If the iterable object is empty, the any() function will return False. bất kỳ vs tất cả
Kiểm tra xem nhiều chuỗi có tồn tại trong một chuỗi khác khôngTrong trường hợp này, chúng ta có thể sử dụng python "bất kỳ ()"."any()" . Ở đây, tập lệnh trả về "tìm thấy một trận đấu", bởi vì ít nhất một từ tồn tại trong danh sách. Ví dụ 2:đầu raCách kiểm tra xem chuỗi có chứa chất nền từ danh sách khôngNếu danh sách của bạn quá dài, tốt hơn là sử dụng biểu thức thông thường của Python.Regular Expression . Ví dụ trên trả về "Tìm thấy một trận đấu" vì "một" tồn tại trong danh sách. Kiểm tra xem một chuỗi có chứa nhiều từ khóa khôngBạn cũng có thể tìm thấy một giải pháp cho việc này bằng cách sử dụng lặp lại.iteration . Tập lệnh trên "Tìm thấy một trận đấu" bởi vì "một" tồn tại trong danh sách Myl. Tất cả các trận đấu bao gồm các bản sao trong một chuỗiNếu bạn muốn nhận tất cả các trận đấu bao gồm các bản sao từ danh sách: Từ đầu tiên phù hợp trong một chuỗi từ danh sáchNếu bạn muốn trận đấu đầu tiên với FALSE là mặc định: Ví dụ trên trả về "một" bởi vì từ "một" là từ bắt đầu và cũng tồn tại trong danh sách myl. Làm thế nào để trích xuất các từ đầu tiên và cuối cùng từ một chuỗi?Tương tự để kiểm tra xem tất cả các chuỗi trong danh sách có được tìm thấy không, hãy sử dụng "tất cả" thay vì "bất kỳ" nào."all" instead of "any" . Ví dụ trên trả về sai vì "sáu" không có trong chuỗi. Các chuỗi trong Python được so sánh với các toán tử 6 và 7. Chúng so sánh nếu hai chuỗi python tương đương hoặc không tương đương, tương ứng. Họ trả lại 8 hoặc 9.Thông thường, khi bạn làm việc với các chuỗi trong Python, bạn có thể muốn so sánh chúng với nhau. Ví dụ: bạn có thể muốn so sánh địa chỉ email của người dùng với địa chỉ bạn đã lưu trữ trong cơ sở dữ liệu khi bạn yêu cầu họ đặt lại mật khẩu của họ. Tìm Bootcamp của bạn phù hợp
Chọn mối quan tâm của bạn họ Tên điện thoại Email Tên của bạn Bằng cách tiếp tục, bạn đồng ý với các điều khoản dịch vụ và chính sách quyền riêng tư của chúng tôi và bạn đồng ý nhận được các ưu đãi và cơ hội từ Karma nghề nghiệp qua điện thoại, tin nhắn văn bản và email. Python bao gồm một số toán tử so sánh có thể được sử dụng để so sánh các chuỗi. Các toán tử này cho phép bạn kiểm tra cách các chuỗi so sánh với nhau và trả về giá trị đúng hoặc sai dựa trên kết quả. Hướng dẫn này sẽ thảo luận về các toán tử so sánh có sẵn để so sánh các chuỗi trong Python. Chúng tôi sẽ đi qua một ví dụ về từng nhà khai thác này để cho thấy cách chúng hoạt động và cách bạn có thể sử dụng chúng trong mã của mình. Nếu bạn đang tìm cách học cách so sánh các chuỗi trong Python, bài viết này là dành cho bạn. Chuỗi python là và không bằngChuỗi là chuỗi các ký tự có thể bao gồm số, chữ cái, ký hiệu và khoảng trắng. Chuỗi là một loại dữ liệu quan trọng vì chúng cho phép các lập trình viên tương tác với dữ liệu dựa trên văn bản trong các chương trình của họ. Khi bạn làm việc với một chuỗi, bạn có thể muốn xem liệu một chuỗi có hay không bằng chuỗi khác. Đó là nơi mà các toán tử so sánh chuỗi 6 và 7 xuất hiện.Toán tử bình đẳng 6 trả về true nếu hai giá trị khớp với nhau; Nếu không, người vận hành trả về sai. Toán tử 7 trả về true nếu hai giá trị không khớp và sai nếu hai giá trị khớp.Điều quan trọng cần lưu ý là so sánh chuỗi là nhạy cảm trường hợp. Vì vậy, các chữ cái chữ thường và chữ hoa sẽ ảnh hưởng đến kết quả của các so sánh bạn thực hiện trong chương trình Python của bạn.case sensitive. So, lowercase letters and uppercase letters will affect the result of the comparisons you perform in your Python program. Hãy nói rằng bạn đang xây dựng một trò chơi kiểm tra người chơi về kiến thức về thủ đô của họ. Để kiếm điểm, người chơi phải trả lời chính xác một câu hỏi. Vì vậy, một người chơi có thể được trao cho bang California và để đạt được điểm, họ sẽ cần phải vào rằng thủ đô là Sacramento vào chương trình. Dưới đây, một ví dụ về ứng dụng trò chơi đoán này so sánh câu trả lời của người dùng với câu trả lời được lưu trữ bởi chương trình: random_state = "Delaware" message = "What is the capital of ", random_state user_answer = input(message) state_capital = "Dover" if user_answer == state_capital: print("You are correct!") else: print("The capital of ", random_state, "is", state_capital) Ở đây, những gì xảy ra khi chúng ta chạy trò chơi đoán của mình và đoán chính xác thủ đô của Del biết là Dover: What is the capital of Delaware Dover You are correct! Các chuỗi của chúng tôi bằng nhau, vì vậy 4 của chúng tôi đánh giá để sửa và in ra 5. Nếu chúng ta đoán không chính xác vốn nhà nước là Denver, mã của chúng ta sẽ trả về:What is the capital of Delaware Denver The capital of Delaware of Dover Hãy để chia nhỏ mã của chúng tôi. Trong lần đầu tiên, chúng tôi tuyên bố trạng thái ngẫu nhiên của chúng tôi, trong trường hợp này là Del biết. Sau đó, chúng tôi sử dụng phương thức người dùng 6 để hỏi người dùng 7.Chương trình của chúng tôi sau đó tuyên bố vốn nhà nước là Dover và sử dụng tuyên bố 8 để so sánh liệu vốn nhà nước có được lưu trữ có bằng với những gì người dùng đã nhập hay không.Khi chúng tôi nhập 9, câu lệnh IF được đánh giá là TRUE, vì vậy chương trình của chúng tôi đã in tin nhắn 5 lên bảng điều khiển. Khi chúng tôi nhập 1, câu lệnh của chúng tôi đã đánh giá sai, vì vậy chương trình của chúng tôi đã thực hiện mã trong câu lệnh in 2.Python là nhà điều hànhPhương pháp phổ biến nhất được sử dụng để so sánh các chuỗi là sử dụng các toán tử 6 và 7, so sánh các biến dựa trên giá trị của chúng. Tuy nhiên, nếu bạn muốn so sánh xem hai trường hợp đối tượng có giống nhau dựa trên ID đối tượng của chúng hay không, thay vào đó bạn có thể muốn sử dụng 5 và 6.Sự khác biệt giữa 6 và 5 (và 7 và 6) là toán tử so sánh 6 so sánh hai biến dựa trên giá trị thực của chúng và từ khóa 5 so sánh hai biến dựa trên ID đối tượng của chúng.Hãy để sử dụng một ví dụ. Nói rằng chúng tôi có điểm của hai người dùng được lưu trữ dưới dạng chuỗi và chúng tôi muốn xem liệu chúng có giống nhau hay không. Chúng tôi có thể làm như vậy bằng cách sử dụng mã sau: player_one_score = "100" player_two_score = "100" if player_one_score is player_two_score: print("Player #1 and #2 have the same number of points.") else: print("Player #1 and #2 do not have the same number of points.") Mã của chúng tôi trả về: Player #1 and #2 have the same number of points. Trong mã trên, chúng tôi cũng có thể đã sử dụng toán tử 6. Tuy nhiên, chúng tôi đã sử dụng toán tử 5 vì nó sử dụng hết bộ nhớ và chúng tôi chỉ cần so sánh hai đối tượng.Tuyên bố 5 được đánh giá là TRUE trong chương trình của chúng tôi vì cả hai biến 6 và 7 đều có cùng một ID đối tượng. Chúng tôi có thể kiểm tra các ID này bằng cách sử dụng từ khóa 8: 0Mã của chúng tôi trả về: 1Trong mã trên, chúng tôi cũng có thể đã sử dụng toán tử 6. Tuy nhiên, chúng tôi đã sử dụng toán tử 5 vì nó sử dụng hết bộ nhớ và chúng tôi chỉ cần so sánh hai đối tượng.Tuyên bố allowed = set(('a', 'b', 'c')) if foo in allowed: bar() 5 được đánh giá là TRUE trong chương trình của chúng tôi vì cả hai biến allowed = set(('a', 'b', 'c')) if foo in allowed: bar() 6 và allowed = set(('a', 'b', 'c')) if foo in allowed: bar() 7 đều có cùng một ID đối tượng. Chúng tôi có thể kiểm tra các ID này bằng cách sử dụng từ khóa allowed = set(('a', 'b', 'c')) if foo in allowed: bar() 8:Như bạn có thể thấy, các đối tượng của chúng tôi giống nhau, và do đó, toán tử 5 được đánh giá là true. Nói chung, bạn nên sử dụng 6 khi bạn so sánh các loại dữ liệu bất biến như chuỗi và số, và khi so sánh các đối tượng.
random_state = "Delaware" message = "What is the capital of ", random_state user_answer = input(message) state_capital = "Dover" if user_answer == state_capital: print("You are correct!") else: print("The capital of ", random_state, "is", state_capital)3 - ít hơn hoặc bằng random_state = "Delaware" message = "What is the capital of ", random_state user_answer = input(message) state_capital = "Dover" if user_answer == state_capital: print("You are correct!") else: print("The capital of ", random_state, "is", state_capital)4 - lớn hơn hoặc bằng 2Hãy nói rằng chúng tôi đã tạo ra một chương trình lấy hai tên sinh viên và trả lại một tin nhắn có tên đầu tiên trong bảng chữ cái. Chúng tôi có thể sử dụng mã sau để thực hiện nhiệm vụ này: Mã của chúng tôi trả về: 3"Karma nghề nghiệp bước vào cuộc sống của tôi khi tôi cần nó nhất và nhanh chóng giúp tôi kết hợp với bootcamp. Hai tháng sau khi tốt nghiệp, tôi tìm thấy công việc mơ ước của mình phù hợp với các giá trị và mục tiêu của tôi trong cuộc sống!" Sao Kim, Kỹ sư phần mềm tại Rockbot Hãy để chia nhỏ mã của chúng tôi. Trên hai dòng đầu tiên, chúng tôi tuyên bố hai biến lưu trữ tên sinh viên của chúng tôi. Trong trường hợp này, những cái tên này là Penny và Paul. Sau đó, chúng tôi tạo ra một câu lệnh IF sử dụng toán tử random_state = "Delaware" message = "What is the capital of ", random_state user_answer = input(message) state_capital = "Dover" if user_answer == state_capital: print("You are correct!") else: print("The capital of ", random_state, "is", state_capital)5 để xác định xem tên Penny có đến trước tên Paul Paul theo thứ tự từ vựng hay không. Nếu điều này đánh giá đúng, một thông điệp được in vào bảng điều khiển nói với chúng tôi rằng Penny đến trước Paul trong bảng chữ cái. Chúng tôi cũng tạo ra một tuyên bố random_state = "Delaware" message = "What is the capital of ", random_state user_answer = input(message) state_capital = "Dover" if user_answer == state_capital: print("You are correct!") else: print("The capital of ", random_state, "is", state_capital)6 sử dụng toán tử random_state = "Delaware" message = "What is the capital of ", random_state user_answer = input(message) state_capital = "Dover" if user_answer == state_capital: print("You are correct!") else: print("The capital of ", random_state, "is", state_capital)7 để xác định xem tên Penny có đến trước tên Paul Paul trong bảng chữ cái hay không. Nếu điều này đánh giá đúng, một thông điệp được in vào bảng điều khiển nói với người dùng rằng Paul đến trước Penny trong bảng chữ cái.Trong trường hợp này, tên Paul Paul xuất hiện trước Penny, trong bảng chữ cái, vì vậy mã trong khối random_state = "Delaware" message = "What is the capital of ", random_state user_answer = input(message) state_capital = "Dover" if user_answer == state_capital: print("You are correct!") else: print("The capital of ", random_state, "is", state_capital)6 của chúng tôi đánh giá là đúng và thông điệp random_state = "Delaware" message = "What is the capital of ", random_state user_answer = input(message) state_capital = "Dover" if user_answer == state_capital: print("You are correct!") else: print("The capital of ", random_state, "is", state_capital)9. được in vào bảng điều khiển. Sự kết luận So sánh hai chuỗi là một tính năng quan trọng của Python. Chẳng hạn, bạn có thể tạo một biểu mẫu đăng nhập cần so sánh mật khẩu mà người dùng đã nhập với mật khẩu họ đã đặt cho tài khoản của họ. Làm cách nào để so sánh nhiều giá trị chuỗi trong Python?So sánh các chuỗi python bằng cách sử dụng == và! == "để so sánh hai chuỗi. Bạn có thể sử dụng toán tử" == "để kiểm tra chuỗi để tương tự và"! = "Toán tử để kiểm tra chuỗi để biết sự không nhất quán. Mỗi toán tử sẽ trả về giá trị boolean true hoặc false, tùy thuộc vào kết quả.using the == and !=
=" to compare two strings. You can use the "==" operator to test strings for similarity and the "! =" operator to check strings for inconsistencies. Each of the operators will return a boolean value True or False, depending on the result.
Làm thế nào để bạn so sánh ba chuỗi trong Python?Các toán tử so sánh Python có thể được sử dụng để so sánh các chuỗi trong Python.Các toán tử này là: bằng (==), không bằng (! =), Lớn hơn (>), nhỏ hơn (<), nhỏ hơn hoặc bằng (=).equal to ( == ), not equal to ( != ), greater than ( > ), less than ( < ), less than or equal to ( <= ), and greater than or equal to ( >= ).
Làm thế nào để bạn kiểm tra nhiều chuỗi trong Python?Bạn có thể sử dụng bất kỳ: A_String = "Một chuỗi nhiều hơn các phần của nó!"Matches = ["More", "lành mạnh", "sữa"] nếu có (x trong a_string cho x trong các trận đấu): Tương tự để kiểm tra xem tất cả các chuỗi từ danh sách có được tìm thấy, hãy sử dụng tất cả thay vì bất kỳ.Bất kỳ () có một sự khác biệt.a_string = "A string is more than its parts!" matches = ["more", "wholesome", "milk"] if any(x in a_string for x in matches): Similarly to check if all the strings from the list are found, use all instead of any . any() takes an iterable.
Tôi có thể sử dụng == để so sánh các chuỗi trong Python không?==: Toán tử này kiểm tra xem hai chuỗi có bằng nhau không.! =: Toán tử này kiểm tra xem hai chuỗi không bằng nhau.This operator checks whether two strings are equal. !=: This operator checks whether two strings are not equal. <: This operator checks whether the string on the left side is smaller than the string on the right side. |