2011-01-13 23 views

Trả lời

10

Tôi không chắc chắn của một biểu đồ, nhưng về cơ bản:

Biên Đổi:

list, dictionary, bytearray Lưu ý: bytearray không phải là một chuỗi mặc dù.

Immutable:

tuple, str

Bạn có thể kiểm tra đột biến với:

>>> import collections 
>>> l = range(10) 
>>> s = "Hello World" 
>>> isinstance(l, collections.MutableSequence) 
True 
>>> isinstance(s, collections.MutableSequence) 
False 

Đối với một cuốn từ điển (bản đồ):

>>> isinstance({}, collections.MutableMapping) 
True 
+0

này kiểm tra cho dù đó là một chuỗi có thể thay đổi - không cho dù đó là một đối tượng có thể thay đổi được. Dicts rõ ràng là các đối tượng có thể thay đổi được, nhưng 'isinstance ({}, collections.MutableSequence)' là sai. –

+0

Có, đối với lệnh dicts, 'MutableMapping' được sử dụng. Tôi không đề cập đến vì tôi lấy ví dụ về danh sách. Tôi sẽ cập nhật nó. – user225312

+0

Điều đó không hiệu quả đối với các bộ. Quan điểm của tôi chỉ là 'bộ sưu tập' sẽ không nói cho bạn một cách chung chung cho dù một đối tượng có thể thay đổi hay không thay đổi được. –

Các vấn đề liên quan