มีโอกาสที่เราต้องการแสดงตัวเลขหรือสตริงเดียวกันหลายครั้งในลิสต์ เราอาจสร้างตัวเลขหรือสตริงเหล่านี้เพื่อวัตถุประสงค์การคำนวณ Python มีฟังก์ชันในตัวที่ช่วยให้ทำได้ง่าย
ใช้ตัวดำเนินการ *
นี่เป็นวิธีที่ใช้บ่อยที่สุด เราใช้ตัวดำเนินการ * ซึ่งจะสร้างการซ้ำของตัวอักษรที่อยู่ก่อนตัวดำเนินการ
ตัวอย่าง
given_value = 'Hello! ' repeated_value = 5 * given_value print(repeated_value)
การรันโค้ดข้างต้นจะให้ผลลัพธ์ดังนี้:
Hello! Hello! Hello! Hello! Hello!
ใช้ repeat
โมดูล itertools มีฟังก์ชัน repeat ฟังก์ชันนี้รับสตริงที่จะซ้ำและจำนวนครั้งที่ต้องการซ้ำ ฟังก์ชัน extend ก็ถูกใช้เพื่อสร้างรายการถัดไปสำหรับลิสต์ที่เก็บผลลัพธ์
ตัวอย่าง
from itertools import repeat given_value = 'Hello! ' new_list = [] new_list.extend(repeat(given_value, 5)) print(new_list)
การรันโค้ดข้างต้นจะให้ผลลัพธ์ดังนี้:
['Hello! ', 'Hello! ', 'Hello! ', 'Hello! ', 'Hello! ']
ใช้ extend และลูป for
เราสามารถใช้ extend() เพื่อสร้างลิสต์ของสตริงที่จะซ้ำ โดยใช้ range และลูป for ก่อนอื่นประกาศลิสต์ว่าง แล้วขยายลิสต์โดยเพิ่มสมาชิกที่สร้างจากลูป for range() กำหนดจำนวนครั้งที่ลูป for ทำงาน
ตัวอย่าง
given_value = 'Hello! ' new_list = [] new_list.extend([given_value for i in range(5)]) print(new_list)
การรันโค้ดข้างต้นจะให้ผลลัพธ์ดังนี้:
['Hello! ', 'Hello! ', 'Hello! ', 'Hello! ', 'Hello! ']
สรุป: มีหลายวิธีในการซ้ำค่าในลิสต์ วิธี * เร็วที่สุดสำหรับสตริง ส่วน itertools.repeat และ list comprehension ยืดหยุ่นกว่าสำหรับออบเจ็กต์ซับซ้อน