Cách so sánh một biến với các phần tử trong một tập hơp

option=[1,2,'blabla']
player=input()
if player #không nằm trong option

code của em có dạng như trên, ý tưởng của em là “nếu player không phải là một trong các phần tử của option thì:” nhưng mà em thử not in với != đều không được thì phải làm như thế nào ạ ( em mới học python nên mọi người giải thích kĩ hộ em với ạ, em cảm ơn ạ)

Bạn học cú pháp đi chứ, dùng với list thì not in chứ != là bạn tự sáng tác à? Không có chuyện tự sáng tác ở đây và biện minh rằng “em mới học” <= hết sức tào lao. Nếu không biết học cú pháp ở đâu thì mua lấy một cuốn sách Python căn bản (ví dụ: Python 101) là cách nên làm. Người mới học (nếu chưa vững ngôn ngữ lập trình nào) nên tránh xa mấy Tutorial viết bởi việc copy vớ vẩn thiếu hệ thống từ các trang web khác nhau, rất tai hại và sẽ bị lơ mơ.

players = ['cho','meo','vit','ga']

p = input("Name of a player in en-ni-moh?")

if p not in players:
   print ("Th1s pl@yer cannot play fut-bull")
else :
   print ("This player is a top notch golfer")

Tiêu đề của topic của bạn đọc lên cũng khiến người ta chẳng hiểu tại sao số ít lại đi so sánh với số nhiều. Tiêu đề nên viết “kiểm tra sự tồn tại của một phần tử trong list” <= sẽ thấy được đoạn không tồn tại khi đọc đoạn giải thích về tồn tại.

1 Like

Hàm input() trả về 1 string, nếu bạn nhập vào 1 thì biến player nhận được giá trị "1". Cho nên có lẽ vấn đề là bạn chưa hiểu rõ giá trị được đem đi so sánh như thế nào chứ không hẳn là bạn dùng if như thế nào :smile:

Còn để kiểm tra 1 phần tử có nằm trong list hay không thì bạn chỉ cần code đơn giản

if player in option:
    ...

thế này thôi.

1 Like
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?