Computer >> Máy Tính >  >> Lập trình >> Python

Toàn diện bằng Python

Chúng ta có thể tạo chuỗi mới bằng cách sử dụng một chuỗi python đã cho. Đây được gọi là sự lĩnh hội. Về cơ bản, nó là một cách viết một khối mã ngắn gọn để tạo ra một chuỗi có thể là một danh sách, từ điển, tập hợp hoặc một trình tạo bằng cách sử dụng một chuỗi khác. Nó có thể bao gồm nhiều bước chuyển đổi giữa các loại trình tự khác nhau.

Hiểu danh sách

Trong phương pháp này, chúng tôi tạo một danh sách mới bằng cách thao tác các giá trị của danh sách hiện có. Trong ví dụ dưới đây, chúng tôi lấy một danh sách và tạo một danh sách mới bằng cách thêm 3 vào mỗi phần tử của danh sách đã cho.

Ví dụ

 given_list =[x for x in range (5)] print (given_list) new_list =[var + 3 for var in given_list] print (new_list) 

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

 [0, 1, 2, 3, 4] [3, 4, 5, 6, 7] 

Hiểu từ điển

Tương tự như trên, chúng ta có thể lấy một danh sách và tạo một từ điển từ đó.

Ví dụ

 given_list =[x for x in range (5)] print (given_list) #new_list =[var + 3 for var in given_list] new_dict ={var:var + 3 for var in given_list} print (new_dict)  

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

 [0, 1, 2, 3, 4] {0:3, 1:4, 2:5, 3:6, 4:7} 

Chúng tôi cũng có thể lấy hai danh sách và tạo một từ điển mới từ nó.

Ví dụ

 list1 =[x for x in range (5)] list2 =['Mon', 'Tue', 'Wed', 'Thu', 'Fri'] print (list1) print (list2) new_dict ={key :value for (key, value) trong zip (list1, list2)} print (new_dict) 

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

 [0, 1, 2, 3, 4] ['Mon', 'Tue', 'Wed', 'Thu', 'Fri'] {0:'Mon', 1:'Tue', 2:'T4', 3:'Thu', 4:'T6'} 

Đặt hiểu

Chúng ta có thể thực hiện cách tiếp cận tương tự như trên và tạo tập hợp mới từ tập hợp hoặc danh sách hiện có. Trong ví dụ dưới đây, chúng tôi tạo một tập hợp mới bằng cách thêm 3 vào các phần tử của tập hợp hiện có.

Ví dụ

 given_set ={x for x in range (5)} print (given_set) new_set ={var + 3 for var in given_set} print (new_set) 

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

 {0, 1, 2, 3, 4} {3, 4, 5, 6, 7} 

Khả năng hiểu của trình tạo

Máy phát điện mới có thể được tạo từ danh sách hiện có. Các trình tạo này có hiệu quả về bộ nhớ vì chúng phân bổ bộ nhớ khi các mục được tạo thay vì cấp phát ngay từ đầu.

Ví dụ

 given_list =[x for x in range (5)] print (given_list) new_set =(var + 3 for var trong given_list) cho var1 trong new_set:print (var1, end ="") 

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

 [0, 1, 2, 3, 4] 3 4 5 6 7