Hướng dẫn how do i say x is not in python list? - làm thế nào để tôi nói x không có trong danh sách python?

Làm cách nào để kiểm tra xem một cái gì đó là (không) trong danh sách trong Python?

Giải pháp rẻ nhất và dễ đọc nhất là sử dụng toán tử

(1, 2) in [(3, 4), (1, 2)]
#  True
0 (hoặc trong trường hợp cụ thể của bạn,
(1, 2) in [(3, 4), (1, 2)]
#  True
1). Như đã đề cập trong tài liệu,

Các nhà khai thác

(1, 2) in [(3, 4), (1, 2)]
#  True
0 và
(1, 2) in [(3, 4), (1, 2)]
#  True
1 Kiểm tra thành viên.
(1, 2) in [(3, 4), (1, 2)]
#  True
4 đánh giá thành
(1, 2) in [(3, 4), (1, 2)]
#  True
5 nếu
(1, 2) in [(3, 4), (1, 2)]
#  True
6 là thành viên của
(1, 2) in [(3, 4), (1, 2)]
#  True
7 và
(1, 2) in [(3, 4), (1, 2)]
#  True
8 khác.
(1, 2) in [(3, 4), (1, 2)]
#  True
9 Trả về sự phủ định của
(1, 2) in [(3, 4), (1, 2)]
#  True
4.

Additionally,

Toán tử

(1, 2) in [(3, 4), (1, 2)]
#  True
1 được xác định là có giá trị thực nghịch của
(1, 2) in [(3, 4), (1, 2)]
#  True
0.

[3, 2, 1].__contains__(1)
# True
3 về mặt logic giống như
[3, 2, 1].__contains__(1)
# True
4.

Đây là vài ví dụ:

'a' in [1, 2, 3]
# False

'c' in ['a', 'b', 'c']
# True

'a' not in [1, 2, 3]
# True

'c' not in ['a', 'b', 'c']
# False

Điều này cũng hoạt động với các bộ dữ liệu, vì các bộ dữ liệu có thể băm (do hậu quả của thực tế là chúng cũng là bất biến):

(1, 2) in [(3, 4), (1, 2)]
#  True

Nếu đối tượng trên RHS xác định phương thức

[3, 2, 1].__contains__(1)
# True
5,
(1, 2) in [(3, 4), (1, 2)]
#  True
0 sẽ gọi nó trong nội bộ, như đã lưu ý trong đoạn cuối của phần so sánh của tài liệu.

...

(1, 2) in [(3, 4), (1, 2)]
#  True
0 và
(1, 2) in [(3, 4), (1, 2)]
#  True
1, được hỗ trợ bởi các loại có thể sử dụng được hoặc thực hiện phương pháp
[3, 2, 1].__contains__(1)
# True
5. Ví dụ, bạn có thể (nhưng không nên) làm điều này:

[3, 2, 1].__contains__(1)
# True

(1, 2) in [(3, 4), (1, 2)]
#  True
0 ngắn mạch, vì vậy nếu phần tử của bạn ở đầu danh sách,
(1, 2) in [(3, 4), (1, 2)]
#  True
0 sẽ đánh giá nhanh hơn:

lst = list(range(10001))
%timeit 1 in lst
%timeit 10000 in lst  # Expected to take longer time.

68.9 ns ± 0.613 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each)
178 µs ± 5.01 µs per loop (mean ± std. dev. of 7 runs, 10000 loops each)

Nếu bạn muốn làm nhiều hơn là chỉ kiểm tra xem một mục có nằm trong danh sách hay không, có các tùy chọn:

  • lst = list(range(10001))
    %timeit 1 in lst
    %timeit 10000 in lst  # Expected to take longer time.
    
    68.9 ns ± 0.613 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each)
    178 µs ± 5.01 µs per loop (mean ± std. dev. of 7 runs, 10000 loops each)
    
    2 có thể được sử dụng để truy xuất chỉ mục của một mục. Nếu yếu tố đó không tồn tại,
    lst = list(range(10001))
    %timeit 1 in lst
    %timeit 10000 in lst  # Expected to take longer time.
    
    68.9 ns ± 0.613 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each)
    178 µs ± 5.01 µs per loop (mean ± std. dev. of 7 runs, 10000 loops each)
    
    3 sẽ được nâng lên.
  • lst = list(range(10001))
    %timeit 1 in lst
    %timeit 10000 in lst  # Expected to take longer time.
    
    68.9 ns ± 0.613 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each)
    178 µs ± 5.01 µs per loop (mean ± std. dev. of 7 runs, 10000 loops each)
    
    4 có thể được sử dụng nếu bạn muốn đếm các lần xuất hiện.

Vấn đề XY: Bạn đã xem xét lst = list(range(10001)) %timeit 1 in lst %timeit 10000 in lst # Expected to take longer time. 68.9 ns ± 0.613 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each) 178 µs ± 5.01 µs per loop (mean ± std. dev. of 7 runs, 10000 loops each) 5S chưa?

Hãy tự hỏi mình những câu hỏi sau:

  • Bạn có cần kiểm tra xem một mục có nằm trong danh sách nhiều lần không một lần?
  • Là kiểm tra này được thực hiện bên trong một vòng lặp, hoặc một chức năng được gọi là lặp đi lặp lại?
  • Các mặt hàng bạn đang lưu trữ trong danh sách của bạn có thể có thể không? Iow, bạn có thể gọi
    lst = list(range(10001))
    %timeit 1 in lst
    %timeit 10000 in lst  # Expected to take longer time.
    
    68.9 ns ± 0.613 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each)
    178 µs ± 5.01 µs per loop (mean ± std. dev. of 7 runs, 10000 loops each)
    
    6 trên chúng không?

Nếu bạn trả lời "có" cho những câu hỏi này, bạn nên sử dụng

lst = list(range(10001))
%timeit 1 in lst
%timeit 10000 in lst  # Expected to take longer time.

68.9 ns ± 0.613 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each)
178 µs ± 5.01 µs per loop (mean ± std. dev. of 7 runs, 10000 loops each)
5 thay thế. Một bài kiểm tra thành viên
(1, 2) in [(3, 4), (1, 2)]
#  True
0 trên
lst = list(range(10001))
%timeit 1 in lst
%timeit 10000 in lst  # Expected to take longer time.

68.9 ns ± 0.613 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each)
178 µs ± 5.01 µs per loop (mean ± std. dev. of 7 runs, 10000 loops each)
9S là độ phức tạp thời gian O (N). Điều này có nghĩa là Python phải thực hiện quét tuyến tính danh sách của bạn, truy cập từng yếu tố và so sánh nó với mục tìm kiếm. Nếu bạn đang làm điều này nhiều lần hoặc nếu danh sách lớn, hoạt động này sẽ phải chịu một chi phí.

Mặt khác, các đối tượng ____35 băm giá trị của chúng để kiểm tra thành viên thời gian liên tục. Kiểm tra cũng được thực hiện bằng cách sử dụng

(1, 2) in [(3, 4), (1, 2)]
#  True
0:

1 in {1, 2, 3} 
# True

'a' not in {'a', 'b', 'c'}
# False

(1, 2) in {('a', 'c'), (1, 2)}
# True

Nếu bạn không may là yếu tố bạn đang tìm kiếm/không tìm kiếm ở cuối danh sách của bạn, Python sẽ quét danh sách cho đến cuối. Điều này thể hiện rõ từ thời gian dưới đây:

l = list(range(100001))
s = set(l)

%timeit 100000 in l
%timeit 100000 in s

2.58 ms ± 58.9 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)
101 ns ± 9.53 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each)

Một lời nhắc nhở, đây là một tùy chọn phù hợp miễn là các yếu tố bạn lưu trữ và tìm kiếm có thể băm. IOW, họ sẽ phải là loại bất biến hoặc các đối tượng thực hiện

1 in {1, 2, 3} 
# True

'a' not in {'a', 'b', 'c'}
# False

(1, 2) in {('a', 'c'), (1, 2)}
# True
2.


Trong bài viết này, chúng tôi sẽ tìm hiểu về nhiều loại phương thức danh sách có sẵn cho chúng tôi trong Python 3.x. Hoặc sớm hơn. Các nhà khai thác này cho phép chúng tôi thực hiện các hoạt động cơ bản trên nội dung danh sách.

Trong & không trong các nhà khai thác

  • Nhà điều hành của người Viking & NBSP; - toán tử này được sử dụng để kiểm tra xem một phần tử có mặt trong danh sách truyền hay không. Trả về true nếu phần tử có mặt trong danh sách khác trả về sai. − This operator is used to check whether an element is present in the passed list or not. Returns true if the element is present in the list otherwise returns false.

  • Nhà điều hành không phải trong nhà điều hành & NBSP; - Toán tử này được sử dụng để kiểm tra xem một phần tử không có trong danh sách được truyền hay không. Trả về true nếu phần tử không có trong danh sách khác trả về sai. Hãy cùng xem ví dụ để hiểu nó tốt hơn. − This operator is used to check whether an element is not present in the passed list or not. Returns true if the element is not present in the list otherwise returns false. Let’s take a look at the example to understand it better.

Thí dụ

lis = ['t','u','t','o','r','i','a','l']
# in operator
if 't' in lis:
   print ("List is having element with value t")
else :
   print ("List is not having element with value t")
# not in operator
if 'p' not in lis:
   print ("List is not having element with value p")
else :
   print ("List is having element with value p")

Đầu ra

List is having element with value t
List is not having element with value p

Các toán tử Len (), Max () & Min ()

  • Len () & nbsp; - Hàm này trả về độ dài của danh sách. Nếu đối tượng không có AssSociation với độ dài, lỗi sẽ được nêu ra. − This function returns the length of list. If the object has no asssociation with length , error is raised .

  • Min () - Hàm này trả về phần tử tối thiểu từ danh sách. − This function returns the minimum element from the list.

  • tối đa () & nbsp; - Hàm này trả về phần tử tối đa từ danh sách. − This function returns the maximum element from the list.

Hãy cùng xem ví dụ để hiểu nó tốt hơn.

Thí dụ

lis = ['t','u','t','o','r','i','a','l']

# len()
print ("The length of list is : ", end="")
print (len(lis))

# min()
print ("The minimum element of list is : ", end="")
print (min(lis))

# max()
print ("The maximum element of list is : ", end="")
print (max(lis))

Đầu ra

The length of list is : 8
The minimum element of list is : a
The maximum element of list is : u

Sự kết luận

Trong bài viết này, chúng tôi đã học cách thực hiện và không trong các toán tử cùng với phương thức Len (), Max (), & Min ().

Hướng dẫn how do i say x is not in python list? - làm thế nào để tôi nói x không có trong danh sách python?

Cập nhật vào ngày 01-tháng 1-2020 07:19:09

  • Câu hỏi và câu trả lời liên quan
  • Tìm Min-Max trong danh sách không đồng nhất trong Python
  • Max () và Min () trong Python
  • Phương thức từ điển trong python (cmp (), len (), items ()
  • Sử dụng Min () và Max () trong Python
  • Min-Max đống
  • Python - Kiểm tra nếu các yếu tố của danh sách nằm trong phạm vi tối đa/tối đa từ danh sách khác
  • Chương trình để lấp đầy cây trò chơi Min-Max trong Python
  • Các đống Min-Max đối xứng
  • Chức năng len () tùy chỉnh trong python
  • Liệt kê các phương pháp trong Python?
  • Sắp xếp tối đa đến giá trị tối thiểu trong mysql
  • Truy vấn phạm vi Min-Max trong mảng trong C ++
  • Giải thích việc sử dụng Min () và Max () sử dụng MySQL trong Python?
  • Chuyển đổi heap tối đa thành heap tối đa trong c ++
  • Thực hiện tối thiểu/tối đa với tập hợp MongoDB

Làm thế nào để bạn nói nếu một cái gì đó không nằm trong danh sách Python?

Không phải trong toán tử trong nhà điều hành - toán tử này được sử dụng để kiểm tra xem một phần tử không có trong danh sách được truyền hay không.Trả về true nếu phần tử không có trong danh sách khác trả về sai. − This operator is used to check whether an element is not present in the passed list or not. Returns true if the element is not present in the list otherwise returns false.

Làm thế nào để bạn kiểm tra xem một phần tử không có trong danh sách?

Phương pháp 1: Phương pháp ngây thơ Python là cách thông thường nhất để kiểm tra xem một phần tử có tồn tại trong danh sách hay không.Cách cụ thể này trả về đúng nếu một phần tử tồn tại trong danh sách và sai nếu phần tử không tồn tại trong danh sách.Danh sách không cần phải được sắp xếp để thực hành phương pháp kiểm tra này.Naive Method Python is the most conventional way to check if an element exists in a list or not. This particular way returns True if an element exists in the list and False if the element does not exist in the list. The list need not be sorted to practice this approach of checking.

Làm thế nào để bạn nói không phải trong Python?

Để so sánh danh tính đối tượng, bạn có thể sử dụng từ khóa Isand phủ định của nó thì không.use the keyword isand its negation is not.

%% trong Python có nghĩa là gì?

Khi bạn nhìn thấy biểu tượng %, bạn có thể nghĩ "phần trăm".Nhưng trong Python, cũng như hầu hết các ngôn ngữ lập trình khác, nó có nghĩa là một cái gì đó khác biệt.Biểu tượng % trong Python được gọi là toán tử modulo.Nó trả về phần còn lại của việc chia toán hạng tay trái cho toán hạng bên phải.It returns the remainder of dividing the left hand operand by right hand operand.