Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

Python วิธีคัดลอกรายการที่ซ้อนกัน


ในบทช่วยสอนนี้ เราจะมาดูวิธีต่างๆ ในการคัดลอกรายการที่ซ้อนกันใน Python มาดูกันทีละตัว

ขั้นแรก เราจะคัดลอกรายการที่ซ้อนกันโดยใช้ลูป และเป็นวิธีธรรมดาที่สุด

ตัวอย่าง

# initializing a list
nested_list = [[1, 2], [3, 4], [5, 6, 7]]
# empty list
copy = []
for sub_list in nested_list:
   # temporary list
   temp = []
   # iterating over the sub_list
   for element in sub_list:
      # appending the element to temp list
      temp.append(element)
   # appending the temp list to copy
   copy.append(temp)
# printing the list
print(copy)

ผลลัพธ์

หากคุณเรียกใช้โค้ดด้านบน คุณจะได้ผลลัพธ์ดังต่อไปนี้

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

มาดูวิธีการคัดลอกรายการที่ซ้อนกันโดยใช้ตัวดำเนินการเข้าใจรายการและแกะกล่อง

ตัวอย่าง

# initializing a list
nested_list = [[1, 2], [3, 4], [5, 6, 7]]
# copying
copy = [[*sub_list] for sub_list in nested_list]
# printing the copy
print(copy)

ผลลัพธ์

หากคุณเรียกใช้โค้ดด้านบน คุณจะได้ผลลัพธ์ดังต่อไปนี้

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

ทีนี้มาดูวิธีอื่นในการคัดลอกรายการที่ซ้อนกัน เราจะมีวิธีที่เรียกว่า deepcopy จากโมดูลการคัดลอกเพื่อคัดลอกรายการที่ซ้อนกัน มาดูกันเลย

ตัวอย่าง

# importing the copy module
import copy
# initializing a list
nested_list = [[1, 2], [3, 4], [5, 6, 7]]
# copying
copy = copy.deepcopy(nested_list)
# printing the copy
print(copy)

ผลลัพธ์

หากคุณเรียกใช้โค้ดด้านบน คุณจะได้ผลลัพธ์ดังต่อไปนี้

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

บทสรุป

หากคุณมีข้อสงสัยเกี่ยวกับบทแนะนำ โปรดระบุในส่วนความคิดเห็น