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

เพิ่มค่าเดียวกันหลายครั้งในลิสต์ Python

มีโอกาสที่เราต้องการแสดงตัวเลขหรือสตริงเดียวกันหลายครั้งในลิสต์ เราอาจสร้างตัวเลขหรือสตริงเหล่านี้เพื่อวัตถุประสงค์การคำนวณ 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 ยืดหยุ่นกว่าสำหรับออบเจ็กต์ซับซ้อน