Nếu bạn muốn tránh
first = Thing[]
second = Thing[]
0, một cách tiếp cận có thể là xác định một lớp. Mỗi trường hợp lớp có các thuộc tính riêng của nó; Ngoài ra còn có một không gian thuộc tính lớp trong đó các trường hợp có thể chia sẻ một thuộc tính giữa chúng.Lập trình hướng đối tượng có thể là một thách thức để tham gia nếu bạn chưa quen với Python, nhưng đây thực sự có thể là thời điểm tốt để bắt đầu chơi với nó.
class Thing:
shared = "foo"
def __init__[self]:
"""
This gets called when you create a new Thing[]
"""
self.bar = "baz" # default value for new instances
def get_bar[self]:
return self.bar
def set_bar[self, value]:
self.bar = value
Bây giờ, hãy tạo hai trường hợp.
first = Thing[]
second = Thing[]
Các phương pháp
first = Thing[]
second = Thing[]
1 và first = Thing[]
second = Thing[]
2 không hoàn toàn cần thiết trong các ví dụ đơn giản như thế này. Bạn cũng có thể làmsecond.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
.
Nếu bạn thay đổi thuộc tính lớp thông qua một trường hợp, nó cũng sẽ không được thay đổi trong các trường hợp khác.
second.shared = "poo"
print[first.shared]
# "foo"
Nhưng nếu bạn thay đổi nó trong bản thân lớp, nó sẽ được thay đổi trong tất cả các trường hợp không ghi đè riêng biệt giá trị được chia sẻ.
Thing.shared = "zoom"
print[first.shared]
# "zoom"
print[second.shared]
# "poo", still
Để tóm tắt lại, bạn tạo một thể hiện
first = Thing[]
second = Thing[]
3 mới bằng cách gọi first = Thing[]
second = Thing[]
4; Điều này sẽ chạy phương thức first = Thing[]
second = Thing[]
5 trước khi trả lại thể hiện mới. Bên trong lớp, phiên bản là đối số đầu tiên cho mọi phương pháp [không tĩnh, không lớp] và được gọi theo quy ước first = Thing[]
second = Thing[]
6 [mặc dù bạn có thể thoát khỏi việc gọi nó là first = Thing[]
second = Thing[]
7 nếu bạn muốn ].Có rất nhiều lớp học; Điểm bán hàng chính có lẽ là bạn có thể tạo các lớp con kế thừa từ lớp cha mẹ của chúng nhưng có thể ghi đè một số hành vi [ví dụ phổ biến thường liên quan đến các khái niệm trong thế giới thực như động vật hoặc phương tiện, nhưng một lớp học có thể là bất cứ điều gì bạn muốn tạo ra một loại và gói gọn hành vi của nó, và có lẽ ghi đè một số phương thức trong các loại dẫn xuất].
Xem thảo luận
Cải thiện bài viết
Lưu bài viết
Xem thảo luận
Cải thiện bài viết
Lưu bài viết
Đọc
Bàn luận
Trong bài viết này, chúng ta sẽ xem làm thế nào để gán một hàm cho một biến trong Python. Trong Python, chúng ta có thể gán một hàm cho một biến. Và sử dụng biến đó, chúng tôi có thể gọi hàm nhiều như thời gian chúng tôi muốn. Do đó, tăng khả năng tái sử dụng mã. & Nbsp;
Syntax::
def func[]: { .. } var=func var[] var[]
Example:
Python3
Thực hiện
second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
0second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
1second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
2second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
3second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
4second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
5second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
6second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
7second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
8Output:
GFG
Chỉ cần gán một hàm cho biến mong muốn nhưng không có [] tức là chỉ với tên của hàm. Nếu biến được gán với hàm cùng với dấu ngoặc [], sẽ không được trả về.
8 first = Thing[]
second = Thing[]
9first = Thing[]
second = Thing[]
Python3
Các chương trình sau đây sẽ giúp bạn hiểu rõ hơn:
Ví dụ 1: & nbsp;
second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
9second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
6 second.shared = "poo"
print[first.shared]
# "foo"
1second.shared = "poo"
print[first.shared]
# "foo"
5second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
1Thing.shared = "zoom"
print[first.shared]
# "zoom"
print[second.shared]
# "poo", still
1second.shared = "poo"
print[first.shared]
# "foo"
5second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
1second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
2Thing.shared = "zoom"
print[first.shared]
# "zoom"
print[second.shared]
# "poo", still
5Thing.shared = "zoom"
print[first.shared]
# "zoom"
print[second.shared]
# "poo", still
6Thing.shared = "zoom"
print[first.shared]
# "zoom"
print[second.shared]
# "poo", still
7Thing.shared = "zoom"
print[first.shared]
# "zoom"
print[second.shared]
# "poo", still
8
second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
1Thing.shared = "zoom"
print[first.shared]
# "zoom"
print[second.shared]
# "poo", still
1first = Thing[]
second = Thing[]
8 second.shared = "poo"
print[first.shared]
# "foo"
3second.shared = "poo"
print[first.shared]
# "foo"
4def func[]: { .. } var=func var[] var[]4
def func[]: { .. } var=func var[] var[]4
Output:
123 98 123 98 123
5second.shared = "poo"
print[first.shared]
# "foo"
9second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
6 second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
8parameterized functionsecond.shared = "poo"
print[first.shared]
# "foo"
Python3
def func[]: { .. } var=func var[] var[]1
second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
6 second.shared = "poo"
print[first.shared]
# "foo"
3Ví dụ 2: Hàm được tham số hóa
GFG7
second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
1second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
2123 98 123 98 1230
second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
4second.shared = "poo"
print[first.shared]
# "foo"
5123 98 123 98 1233
GFG6
GFG7
second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
1second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
2123 98 123 98 1238
second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
4first = Thing[]
second = Thing[]
8 def func[]: { .. } var=func var[] var[]7
odd number even number odd number3
odd number even number odd number4
second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
4odd number even number odd number3
odd number even number odd number7
second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
4odd number even number odd number3
240 400 40000
second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
4Output:
odd number even number odd number
5second.shared = "poo"
print[first.shared]
# "foo"
def func[]:
{
..
}
var=func
var[]
var[]
9 GFG
0GFG
1 GFG
2
6second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
6second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
Python3
def func[]: { .. } var=func var[] var[]1
second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
6 odd number even number odd number2
Ví dụ 3:
first = Thing[]
second = Thing[]
8 240 400 40003
second.shared = "poo"
print[first.shared]
# "foo"
5240 400 40005
second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
6 240 400 40007
second.shared = "poo"
print[first.shared]
# "foo"
5240 400 40009
second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
6 second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
7first = Thing[]
second = Thing[]
022second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
1first = Thing[]
second = Thing[]
11first = Thing[]
second = Thing[]
12first = Thing[]
second = Thing[]
13second.shared = "poo"
print[first.shared]
# "foo"
5first = Thing[]
second = Thing[]
05 first = Thing[]
second = Thing[]
06second.bar = "ick"
print[second.bar]
# "ick"
print[first.bar]
# "baz"
1first = Thing[]
second = Thing[]
11first = Thing[]
second = Thing[]
20first = Thing[]
second = Thing[]
13Output:
240 400 4000