Loại nào là bất biến trong python?

• Thông thường, nó làm mọi thứ hiệu quả hơn. Ví dụ, việc tìm kiếm

list[0] = '!'
#['!', '2', '3', '4', '5']
9 của một chuỗi nhanh hơn nhiều, vì nó là một phần của đối tượng chuỗi

Mỗi biến trong python chứa một thể hiện của một đối tượng. Có hai loại đối tượng trong python i. e. Các đối tượng có thể thay đổi và không thể thay đổi. Bất cứ khi nào một đối tượng được khởi tạo, nó sẽ được gán một id đối tượng duy nhất. Loại đối tượng được xác định trong thời gian chạy và nó không thể thay đổi sau đó. Tuy nhiên, trạng thái của nó có thể được thay đổi nếu nó là một đối tượng có thể thay đổi

Để tóm tắt sự khác biệt, các đối tượng có thể thay đổi có thể thay đổi trạng thái hoặc nội dung của chúng và các đối tượng không thể thay đổi không thể thay đổi trạng thái hoặc nội dung của chúng

  • Đối tượng bất biến. Đây là các loại dựng sẵn như int, float, bool, string, unicode, tuple. Nói một cách đơn giản, một đối tượng bất biến không thể thay đổi sau khi nó được tạo




    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    0

    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    1

    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    2

    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    3
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    4
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    5_______10
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    1
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    2
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    1
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    4
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    1
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    6
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    7

    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    8
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    0
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    10
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    4
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    12

    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    13
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    14

    Lỗi

    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    5




    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    0

    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    16

    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    17

    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    18
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    4
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    90

    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    91
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    0
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    10
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    4
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    95

    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    13
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    97

    Lỗi

    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
  • Đối tượng có thể thay đổi. Đây là các loại list, dict, set. Các lớp tùy chỉnh thường có thể thay đổi




    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    0

    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    99

    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    00
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    4
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    02
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    03
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    1
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    05
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    1
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    07
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    10

    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    13
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    10

    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    17

    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    12
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    0
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    10
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    4
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    16

    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    12
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    18
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    2
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    10
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    4
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    22

    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    13
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    10

    đầu ra

    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    1

Phần kết luận

  1. Các đối tượng có thể thay đổi và không thể thay đổi được xử lý khác nhau trong python. Các đối tượng bất biến truy cập nhanh hơn và tốn kém để thay đổi vì nó liên quan đến việc tạo một bản sao.
    Trong khi các đối tượng có thể thay đổi thì dễ dàng thay đổi.
  2. Nên sử dụng các đối tượng có thể thay đổi khi có nhu cầu thay đổi kích thước hoặc nội dung của đối tượng
  3. Ngoại lệ. Tuy nhiên, cũng có một ngoại lệ trong tính bất biến. Chúng tôi biết rằng tuple trong python là bất biến. Nhưng bộ dữ liệu bao gồm một chuỗi các tên có liên kết không thể thay đổi đối với các đối tượng.
    Xem xét một tuple
    Traceback [most recent call last]:
      File "/home/ff856d3c5411909530c4d328eeca165b.py", line 3, in 
        message[0] = 'p'
    TypeError: 'str' object does not support item assignment
    9

    Tuple bao gồm một chuỗi và một danh sách. Chuỗi là bất biến nên chúng ta không thể thay đổi giá trị của nó. Nhưng nội dung của danh sách có thể thay đổi. Bản thân bộ dữ liệu không thể thay đổi nhưng chứa các mục có thể thay đổi

Theo nguyên tắc thông thường, các loại giống Nguyên thủy nói chung có thể là bất biến và các loại giống Vùng chứa tùy chỉnh hầu hết có thể thay đổi

Những loại nào là bất biến?

Kiểu dữ liệu bất biến. Các loại dữ liệu bất biến khác với các đối tác có thể thay đổi của chúng ở chỗ chúng không thể thay đổi sau khi tạo. Một số loại bất biến bao gồm kiểu dữ liệu số, chuỗi, byte, bộ cố định và bộ dữ liệu .

Tuple có bất biến trong Python không?

Sự khác biệt cơ bản giữa danh sách và bộ là danh sách có thể thay đổi về bản chất trong khi bộ dữ liệu là bất biến .

Cái nào có thể thay đổi và không thay đổi trong Python?

Sự khác biệt giữa Mutable và Immutable trong Python. Trong ngôn ngữ lập trình Python, bất cứ khi nào trạng thái bên trong của đối tượng có thể sạc được, đối tượng đó được gọi là đối tượng có thể thay đổi. Vì vậy, bất cứ khi nào đối tượng trải qua thay đổi trạng thái bên trong, nó được gọi là có thể thay đổi và nếu không thì nó được gọi là đối tượng không thay đổi

Loại nào không phải là loại bất biến trong Python?

Đối tượng bất biến. Đây là các loại dựng sẵn như int, float, bool, string, unicode, tuple. Nói một cách đơn giản, một đối tượng bất biến không thể thay đổi sau khi nó được tạo. Đối tượng có thể thay đổi. Đây là các loại list, dict, set

Chủ Đề