Gán giá trị cho đối tượng python
Python hỗ trợ số, chuỗi, tập hợp, danh sách, bộ dữ liệu và từ điển. Đây là những kiểu dữ liệu tiêu chuẩn. Tôi sẽ giải thích chi tiết từng người trong số họ Show
Khai báo và gán giá trị cho biếnPhép gán đặt giá trị cho một biến Để gán giá trị cho biến, hãy sử dụng dấu bằng (=) myFirstVariable = 1
Lưu ý cách tôi đã gán giá trị số nguyên là 1 và sau đó là giá trị chuỗi “Xin chào bạn” cho cùng một biến myFirstVariable. Điều này có thể là do các kiểu dữ liệu được nhập động trong python Đây là lý do tại sao Python được biết đến như một ngôn ngữ lập trình được gõ động Nếu bạn muốn gán cùng một giá trị cho nhiều biến thì bạn có thể sử dụng phép gán chuỗi myFirstVariable = mySecondVariable = 1 số
value = 1 #integer
Dây
name = 'farhad'
a = 'me'Updating it will fail:
Do đó, một tham chiếu/con trỏ tới một đối tượng được tạo. Con trỏ này sau đó được gán cho biến và kết quả là biến đó có thể được sử dụng trong chương trình Chúng ta cũng có thể gán một biến cho một biến khác. Tất cả những gì nó làm là một con trỏ mới được tạo trỏ đến cùng một đối tượng a = 1 #new object is created and 1 is stored there, new pointer is created, the pointer connects a to 1 Các biến có thể có phạm vi cục bộ hoặc toàn cầuPhạm vi cục bộ
def some_funcion(): Trong Python, khối vòng lặp if-else và for/while không tạo ra bất kỳ phạm vi cục bộ nào for i in range(1, 11): đầu ra ________số 8Với khối if-else is_python_awesome = Trueif is_python_awesome: đầu ra myFirstVariable = mySecondVariable = 1 0Phạm vi toàn cầu
myFirstVariable = mySecondVariable = 1 1Việc xóa dòng “global TestMode” sẽ chỉ đặt biến thành Sai trong hàm some_function() Ghi chú. Mặc dù tôi sẽ viết thêm về khái niệm mô-đun sau, nhưng nếu bạn muốn chia sẻ một biến toàn cục trên một số mô-đun thì bạn có thể tạo một tệp mô-đun dùng chung e. g. cấu hình. py và định vị biến của bạn ở đó. Cuối cùng, nhập mô-đun dùng chung vào mô-đun người tiêu dùng của bạn Tìm loại biến
myFirstVariable = mySecondVariable = 1 2Dấu phẩy trong các biến số nguyên
myFirstVariable = mySecondVariable = 1 33. hoạt động
Phép toán số
myFirstVariable = mySecondVariable = 1 4
myFirstVariable = mySecondVariable = 1 5
myFirstVariable = mySecondVariable = 1 6Ngoài ra còn có một phương pháp dựng sẵn divmod. Nó trả về bộ chia và mô đun myFirstVariable = mySecondVariable = 1 7Hoạt động chuỗiConcat Chuỗi myFirstVariable = mySecondVariable = 1 8Hãy nhớ rằng chuỗi là một kiểu dữ liệu bất biến, do đó, việc nối các chuỗi sẽ tạo ra một đối tượng chuỗi mới Chuỗi lặp lại myFirstVariable = mySecondVariable = 1 9cắt lát value = 1 #integer 0đảo chiều value = 1 #integer 1Chỉ số tiêu cực Nếu bạn muốn bắt đầu từ ký tự cuối cùng thì hãy sử dụng chỉ số âm value = 1 #integer 2Nó cũng được sử dụng để loại bỏ bất kỳ dòng/dấu cách mới nào Mỗi phần tử trong một mảng có hai chỉ mục
value = 1 #integer 3Tìm chỉ mục value = 1 #integer 4Đối với Regex, sử dụng
Vật đúc
Ghi nhớ danh sách có thể thay đổi (có thể cập nhật) và tuple là bất biến (chỉ đọc) Đặt hoạt động
value = 1 #integer 5Bộ giao nhau
value = 1 #integer 6sự khác biệt trong bộ
value = 1 #integer 7Liên minh các bộ sưu tập
value = 1 #integer 8Toán tử bậc ba
cú pháp [Nếu Đúng] nếu [Biểu thức] Khác [Nếu Sai] Ví dụ value = 1 #integer 9Nhận dạng đối tượngBây giờ tôi sẽ cố gắng giải thích chủ đề quan trọng của Nhận dạng đối tượng Bất cứ khi nào chúng ta tạo một đối tượng trong Python, chẳng hạn như biến, hàm, v.v., trình thông dịch Python cơ bản sẽ tạo một số xác định duy nhất đối tượng đó. Một số đối tượng được tạo trước Khi một đối tượng không còn được tham chiếu trong mã thì nó sẽ bị xóa và số nhận dạng của nó có thể được sử dụng bởi các biến khác
Bạn có thể sử dụng truy nguyên để tìm danh sách các chức năng nếu gặp lỗi thư mục () và trợ giúp ()
Hãy hiểu nó một cách chi tiếtHãy xem xét mã dưới đây name = 'farhad' 0var_one và var_two là hai biến được định nghĩa trong đoạn mã trên. Cùng với các biến, một hàm có tên func_one cũng được định nghĩa. Một lưu ý quan trọng cần ghi nhớ là mọi thứ đều là đối tượng trong Python, kể cả hàm Trong hàm, chúng tôi đã gán giá trị 234 cho var_one và tạo một biến mới có tên var_three và gán cho nó giá trị là 'abc' Bây giờ, hãy hiểu mã với sự trợ giúp của dir() và id() Đoạn mã trên cùng các biến và hàm của nó sẽ được tải trong khung Global. Khung toàn cầu sẽ chứa tất cả các đối tượng mà các khung khác yêu cầu. Ví dụ, có nhiều phương thức tích hợp được tải trong Python có sẵn cho tất cả các khung. Đây là các khung chức năng Chạy đoạn mã trên sẽ in name = 'farhad' 1Các biến có tiền tố là __ được gọi là các biến đặc biệt Lưu ý rằng var_three chưa khả dụng. Hãy thực thi func_one(var_one) và sau đó đánh giá dir() name = 'farhad' 2Chúng ta sẽ lại thấy cùng một danh sách name = 'farhad' 3Điều này có nghĩa là các biến trong func_one chỉ nằm trong func_one. Khi func_one được thực thi thì Frame được tạo. Python là từ trên xuống nên nó luôn thực hiện các dòng từ trên xuống dưới Khung chức năng có thể tham chiếu các biến trong khung toàn cầu nhưng bất kỳ khung chức năng nào khác không thể tham chiếu các biến giống nhau được tạo trong chính nó. Chẳng hạn, nếu tôi tạo một hàm mới func_two để cố in var_three thì nó sẽ bị lỗi name = 'farhad' 4Chúng tôi gặp lỗi NameError. tên 'var_three' không được xác định Điều gì sẽ xảy ra nếu chúng ta tạo một biến mới bên trong func_two() và sau đó in dir()? name = 'farhad' 5Điều này sẽ in var_four vì nó là cục bộ của func_two Bài tập hoạt động như thế nào trong Python?Đây là một trong những khái niệm quan trọng nhất cần hiểu trong Python. Python có hàm id() Khi một đối tượng (hàm, biến, v.v. ) được tạo, CPython cấp cho nó một địa chỉ trong bộ nhớ. Hàm id() trả về “danh tính” của một đối tượng. Nó thực chất là một số nguyên duy nhất Chẳng hạn, hãy tạo bốn biến và gán giá trị cho chúng name = 'farhad' 6Các id sẽ được in như sau Biến1. 1747938368 Mỗi biến đã được gán một giá trị số nguyên mới Giả định đầu tiên là bất cứ khi nào chúng ta sử dụng phép gán “=” thì Python sẽ tạo một địa chỉ bộ nhớ mới để lưu trữ biến. Có thật 100% không ạ Tôi sẽ tạo hai biến và gán chúng cho các biến hiện có name = 'farhad' 7Python in Biến1. 1747938368 Lưu ý rằng Python không tạo địa chỉ bộ nhớ mới cho hai biến. Lần này, nó chỉ cả hai biến vào cùng một vị trí bộ nhớ Hãy đặt một giá trị mới cho biến1. Hãy nhớ 2 là số nguyên và số nguyên là kiểu dữ liệu không thay đổi name = 'farhad' 8Điều này sẽ in Biến1. 1747938368 Điều đó có nghĩa là bất cứ khi nào chúng ta sử dụng dấu = và gán một giá trị mới cho một biến không phải là tham chiếu biến thì bên trong một địa chỉ bộ nhớ mới sẽ được tạo để lưu trữ biến đó. Hãy xem nếu nó giữ Điều gì xảy ra khi biến là kiểu dữ liệu có thể thay đổi? biến6 là một danh sách. Hãy thêm một mục vào nó và in địa chỉ bộ nhớ của nó name = 'farhad' 9Lưu ý rằng địa chỉ bộ nhớ vẫn giữ nguyên cho biến vì đây là kiểu dữ liệu có thể thay đổi và chúng tôi chỉ cần cập nhật các phần tử của nó Biến6. 678181106888 Hãy tạo một hàm và truyền một biến cho nó. Nếu chúng ta đặt giá trị của biến bên trong hàm, nó sẽ làm gì bên trong hàm? a = 'me'Updating it will fail:0 Chúng tôi nhận được 678181106888 Lưu ý rằng id của biến_to_update trỏ đến id của biến 6 Điều này có nghĩa là nếu chúng ta cập nhật biến_to_update trong một hàm và nếu biến_to_update là kiểu dữ liệu có thể thay đổi thì chúng ta sẽ cập nhật biến6 a = 'me'Updating it will fail:1 bản in này Biến6. [‘new’] Nó cho chúng ta thấy rằng cùng một đối tượng được cập nhật trong chức năng như mong đợi vì cả hai đều có cùng một ID Nếu chúng ta gán một giá trị mới cho một biến, bất kể đó là kiểu dữ liệu không thay đổi và có thể thay đổi thì thay đổi sẽ bị mất khi chúng ta ra khỏi hàm a = 'me'Updating it will fail:2 Biến6. [‘new’] Bây giờ là một kịch bản thú vị. Python không phải lúc nào cũng tạo địa chỉ bộ nhớ mới cho tất cả các biến mới. Hãy để tôi giải thích Cuối cùng, điều gì sẽ xảy ra nếu chúng ta gán cho hai biến khác nhau một giá trị chuỗi, chẳng hạn như 'a'. Nó sẽ tạo hai địa chỉ bộ nhớ? a = 'me'Updating it will fail:3 Lưu ý, cả hai biến có cùng vị trí bộ nhớ Biến9. 792473698064 Điều gì sẽ xảy ra nếu chúng ta tạo hai biến khác nhau và gán cho chúng một giá trị chuỗi dài a = 'me'Updating it will fail:4 Lần này Python đã tạo hai vị trí bộ nhớ cho hai biến Biến9. 541949933872 Điều này là do Python tạo bộ đệm nội bộ chứa các giá trị khi nó khởi động. Điều này được thực hiện để cung cấp kết quả nhanh hơn. Nó tạo ra một số địa chỉ bộ nhớ cho các số nguyên nhỏ, chẳng hạn như từ -5 đến 256 và các giá trị chuỗi nhỏ hơn. Đây là lý do tại sao cả hai biến trong ví dụ của chúng tôi đều có cùng một ID Làm thế nào một người có thể gán giá trị cho các đối tượng?Các đối tượng được gán giá trị bằng cách sử dụng . (Dấu bằng = , cũng có thể được sử dụng. ) Ví dụ lệnh sau gán giá trị 5 cho đối tượng x. Sau phép gán này, đối tượng x 'chứa' giá trị 5.
Các cách khác nhau để gán giá trị cho biến Python là gì?Cách gán giá trị cho biến trong Python . Khởi tạo trực tiếp. Trong phương thức này, chúng ta khai báo trực tiếp biến và gán giá trị bằng dấu =. . Ví dụ. x = 5 x = 9 in(a). đầu ra. . Sử dụng if-else. Chúng ta có thể khởi tạo giá trị của một biến bằng cách sử dụng một số điều kiện. . Ví dụ. . đầu ra Bạn có thể gán một biến cho một biến trong Python không?Việc gán một biến cho một biến khác sẽ tạo bí danh cho từng biến . Bí danh là biến trỏ đến cùng một đối tượng trong bộ nhớ như một biến khác. Trong ví dụ trên, cả hai biến var1 và var2 đều là bí danh của nhau. Trong Python, có thể hủy tham chiếu. |