Cải thiện bài viết
Lưu bài viết
Cải thiện bài viết
Lưu bài viết
Đọc
Bàn luận
- Một từ điển trong Python là một tập hợp các dữ liệu không được đặt hàng và có thể thay đổi. Không giống như, các chỉ số số được sử dụng bởi danh sách, từ điển sử dụng khóa làm chỉ mục cho một giá trị cụ thể. Nó có thể được sử dụng để lưu trữ các loại dữ liệu không liên quan nhưng dữ liệu có liên quan như một thực thể trong thế giới thực. Bản thân các khóa được sử dụng để sử dụng một giá trị cụ thể.
Tham khảo bài viết dưới đây để có ý tưởng về Từ điển Python.
Từ điển Python
Example:
Truyền từ điển như một cuộc tranh luận
Trong Python, mọi thứ đều là một đối tượng, vì vậy từ điển có thể được truyền như một đối số cho một hàm như các biến khác được truyền.
John F. Kennedy5
John F. Kennedy6
John F. Kennedy7
John F. Kennedy8
John F. Kennedy9
John F. Kennedy x = 2 y = 00
John F. Kennedy x = 2 y = 01
def
func[d]:
data = {'school':'DAV', 'standard': '7', 'name': 'abc', 'city': 'delhi'}
my_function[*data]
7Output:
key: b Value: 2 key: a Value: 1 key: c Value: 3
John F. Kennedy
0____11 John F. Kennedy
2John F. Kennedy
3 John F. Kennedy
4
John F. Kennedy x = 2 y = 02
John F. Kennedy x = 2 y = 03
John F. Kennedy x = 2 y = 04
John F. Kennedy x = 2 y = 05
John F. Kennedy x = 2 y = 06
John F. Kennedy x = 2 y = 07
John F. Kennedy x = 2 y = 08
John F. Kennedy x = 2 y = 09
John F. Kennedy x = 2 y = 06
data = {'school':'DAV', 'standard': '7', 'name': 'abc', 'city': 'delhi'}
my_function[*data]
1John F. Kennedy x = 2 y = 08
data = {'school':'DAV', 'standard': '7', 'name': 'abc', 'city': 'delhi'}
my_function[*data]
3John F. Kennedy x = 2 y = 06
data = {'school':'DAV', 'standard': '7', 'name': 'abc', 'city': 'delhi'}
my_function[*data]
5data = {'school':'DAV', 'standard': '7', 'name': 'abc', 'city': 'delhi'}
my_function[*data]
6Đi qua từ điển như kwargs
Cấm
data = {'school':'DAV', 'standard': '7', 'name': 'abc', 'city': 'delhi'}
my_function[*data]
8 là viết tắt của các đối số từ khóa. Nó được sử dụng để chuyển các đối tượng dữ liệu nâng cao như từ điển cho một hàm vì trong các chức năng như vậy, người ta không có manh mối về số lượng đối số, do đó dữ liệu được truyền được xử lý đúng cách bằng cách thêm vào loại ** ** vào loại truyền.Ví dụ 1:
def
my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
0my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
1my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
1my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
3John F. Kennedy0
4def myfunc[name, gender, age]:
print [name," is a ", gender, " of age ", age]
mydict = {'name': "Faraz", 'gender': "male", 'age': "20"}
myfunc[**mydict]
John F. Kennedy x = 2 y = 03
6def myfunc[name, gender, age]:
print [name," is a ", gender, " of age ", age]
mydict = {'name': "Faraz", 'gender': "male", 'age': "20"}
myfunc[**mydict]
7def myfunc[name, gender, age]:
print [name," is a ", gender, " of age ", age]
mydict = {'name': "Faraz", 'gender': "male", 'age': "20"}
myfunc[**mydict]
8def myfunc[name, gender, age]:
print [name," is a ", gender, " of age ", age]
mydict = {'name': "Faraz", 'gender': "male", 'age': "20"}
myfunc[**mydict]
9def myfunc[name, gender, age]:
print [name," is a ", gender, " of age ", age]
mydict = {'name': "Faraz", 'gender': "male", 'age': "20"}
myfunc[**mydict]
John F. Kennedy x = 2 y = 03
1def myfunc[**kwargs]:
print["I work with the follwoing people: "]
for people in kwargs:
print [kwargs[people]]
mydict = {'person1': "Faraz", 'person2': "Rukhshan", 'person3': "Muzammil"}
myfunc[**mydict]
2def myfunc[**kwargs]:
print["I work with the follwoing people: "]
for people in kwargs:
print [kwargs[people]]
mydict = {'person1': "Faraz", 'person2': "Rukhshan", 'person3': "Muzammil"}
myfunc[**mydict]
8def myfunc[name, gender, age]:
print [name," is a ", gender, " of age ", age]
mydict = {'name': "Faraz", 'gender': "male", 'age': "20"}
myfunc[**mydict]
4def myfunc[**kwargs]:
print["I work with the follwoing people: "]
for people in kwargs:
print [kwargs[people]]
mydict = {'person1': "Faraz", 'person2': "Rukhshan", 'person3': "Muzammil"}
myfunc[**mydict]
John F. Kennedy x = 2 y = 03
6def myfunc[**kwargs]:
print["I work with the follwoing people: "]
for people in kwargs:
print [kwargs[people]]
mydict = {'person1': "Faraz", 'person2': "Rukhshan", 'person3': "Muzammil"}
myfunc[**mydict]
7def myfunc[**kwargs]:
print["I work with the follwoing people: "]
for people in kwargs:
print [kwargs[people]]
mydict = {'person1': "Faraz", 'person2': "Rukhshan", 'person3': "Muzammil"}
myfunc[**mydict]
8def myfunc[**kwargs]:
print["I work with the follwoing people: "]
for people in kwargs:
print [kwargs[people]]
mydict = {'person1': "Faraz", 'person2': "Rukhshan", 'person3': "Muzammil"}
myfunc[**mydict]
Output:
John F. Kennedy
John F. Kennedy
0John F. Kennedy
6
6my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
7my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
8my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
9my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
0my_function[school='DAV', standard='7', name='abc', city='delhi']
9my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
2253my_function[school='DAV', standard='7', name='abc', city='delhi']
8my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
9my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
0494952my_function[school='DAV', standard='7', name='abc', city='delhi']
def
2def myfunc[name, gender, age]:
print [name," is a ", gender, " of age ", age]
mydict = {'name': "Faraz", 'gender': "male", 'age': "20"}
myfunc[**mydict]
Ví dụ 1:
def
my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
0my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
1my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
1my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
3John F. Kennedy0
John F. Kennedy6
my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
6my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
7my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
8my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
9my_function[school='DAV', standard='7', name='abc', city='delhi']
0my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
9my_function[school='DAV', standard='7', name='abc', city='delhi']
2253my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
8my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
9my_function[school='DAV', standard='7', name='abc', city='delhi']
0494952def
my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
0my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
1my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
1my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
3John F. Kennedy0
my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
0data = {'school':'DAV', 'standard': '7', 'name': 'abc', 'city': 'delhi'}
my_function[*data]
1John F. Kennedy22
John F. Kennedy x = 2 y = 03
6def myfunc[name, gender, age]:
print [name," is a ", gender, " of age ", age]
mydict = {'name': "Faraz", 'gender': "male", 'age': "20"}
myfunc[**mydict]
John F. Kennedy25
John F. Kennedy x = 2 y = 03
1def myfunc[**kwargs]:
print["I work with the follwoing people: "]
for people in kwargs:
print [kwargs[people]]
mydict = {'person1': "Faraz", 'person2': "Rukhshan", 'person3': "Muzammil"}
myfunc[**mydict]
John F. Kennedy28
John F. Kennedy x = 2 y = 03
6def myfunc[**kwargs]:
print["I work with the follwoing people: "]
for people in kwargs:
print [kwargs[people]]
mydict = {'person1': "Faraz", 'person2': "Rukhshan", 'person3': "Muzammil"}
myfunc[**mydict]
7def myfunc[**kwargs]:
print["I work with the follwoing people: "]
for people in kwargs:
print [kwargs[people]]
mydict = {'person1': "Faraz", 'person2': "Rukhshan", 'person3': "Muzammil"}
myfunc[**mydict]
John F. Kennedy0
John F. Kennedy6
my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
6my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
7my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
8my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
9my_function[school='DAV', standard='7', name='abc', city='delhi']
0my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
9my_function[school='DAV', standard='7', name='abc', city='delhi']
2253my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
8my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
9my_function[school='DAV', standard='7', name='abc', city='delhi']
0494952Output:
John F. Kennedy x = 2 y = 0
Mã của tôi
Tệp đầu tiên:
data = {'school':'DAV', 'standard': '7', 'name': 'abc', 'city': 'delhi'}
my_function[*data]
Tệp thứ 2:
my_function[*data]:
schoolname = school
cityname = city
standard = standard
studentname = name
Trong mã trên, chỉ các khóa từ điển "dữ liệu" được chuyển đến
John F. Kennedy33, nhưng tôi muốn các cặp giá trị khóa được truyền. Làm thế nào để sửa chữa cái này?
Tôi muốn
John F. Kennedy33 được sửa đổi như thế này
my_function[school='DAV', standard='7', name='abc', city='delhi']
Và đây là yêu cầu của tôi, đưa ra câu trả lời theo điều này
Chỉnh sửa: Lớp khóa từ điển được thay đổi thành tiêu chuẩn
Các loại đối số khác nhau
Đối với bất kỳ chức năng nào trong Python, chúng ta có thể có hai loại đối số tùy ý:
Đối số vị trí: Đây là các đối số chức năng cần được đưa vào hàm theo thứ tự cụ thể khi chúng được xác định.: These are function arguments that need to be fed to the function in the specific order as they were defined.
Đối số từ khóa: Đây là các đối số chức năng đã được đặt tên/từ khóa trong quá trình định nghĩa hàm. Bạn cần xác định từ khóa cụ thể khi chuyển đối số từ khóa [kwarg] cho một hàm.: These are function arguments that have been given a name/keyword during the function definition. You need to identify the specific keyword when passing a keyword argument [kwarg] to a function.
Từ khóa đối số
Đối số từ khóa có thể được cung cấp theo bất kỳ thứ tự nào, nhưng cần được chỉ định với từ khóa của chúng theo cách sau:
Ví dụ cú pháp ở trên cho thấy cách bạn có thể truyền nhiều đối số từ khóa trong một hàm yêu cầu chúng. Bạn cần chỉ định tên của đối số từ khóa theo sau là
John F. Kennedy x = 2 y = 03 và sau đó bằng tham số bạn muốn truyền. Nếu hàm chấp nhận nhiều kwarg, thì bạn có thể chỉ định các tham số của mình theo bất kỳ thứ tự nào. Hàm tự động khớp với từ khóa với các biến chức năng chính xác.
Giải nén kwargs và từ điển
Các chức năng với kwarg thậm chí có thể lấy toàn bộ từ điển làm tham số; Tất nhiên, trong trường hợp đó, các khóa của từ điển phải giống như các từ khóa được xác định trong hàm.
Bạn không thể trực tiếp gửi từ điển dưới dạng tham số đến một hàm chấp nhận kwargs. Từ điển phải được giải nén để hàm có thể sử dụng các yếu tố của nó. Điều này được thực hiện bằng cách giải nén từ điển, bằng cách đặt
John F. Kennedy36 trước tên từ điển khi bạn chuyển nó vào hàm.
Sau đây là một chương trình cho thấy cách bạn có thể sử dụng từ điển thay vì nhập từng kwarg.
def myfunc[name, gender, age]:
print [name," is a ", gender, " of age ", age]
mydict = {'name': "Faraz", 'gender': "male", 'age': "20"}
myfunc[**mydict]
Đôi khi, chúng ta cần có một số lượng kwarg khác trong một hàm; Trong những trường hợp như vậy, hàm gói tất cả các đối số trong một từ điển duy nhất.
Sau đây là định nghĩa của một hàm như vậy:
Các chức năng với các định nghĩa tương tự có thể có một số lượng kwarg tùy ý và có thể lấy một từ điển có độ dài tùy ý. Trong trường hợp này [khác với trước đó], các khóa từ điển không cần phải là bất cứ điều gì cụ thể. Điều này có thể được coi là tương tự như gửi một danh sách đến một chức năng.
Ví dụ sau đây giúp chúng tôi hiểu làm thế nào một chức năng như vậy sẽ giải nén và sử dụng từ điển:
def myfunc[**kwargs]:
print["I work with the follwoing people: "]
for people in kwargs:
print [kwargs[people]]
mydict = {'person1': "Faraz", 'person2': "Rukhshan", 'person3': "Muzammil"}
myfunc[**mydict]
Bản quyền © 2022 Giáo dục, Inc. Tất cả quyền được bảo lưu