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

โปรแกรม Python แปลง Tuple เป็น List โดยเพิ่ม String หลังแต่ละสมาชิก

เมื่อต้องการแปลง tuple เป็น list โดยแทรก string ที่กำหนด (เช่น "Hi") หลังสมาชิกแต่ละตัว สามารถใช้ list comprehension แบบ nested

โค้ดตัวอย่าง

my_tup = (56, 78, 91, 32, 45, 11, 23)
print("The tuple is:")
print(my_tup)
K = "Hi"
my_result = [elem for sub in my_tup for elem in (sub, K)]
print("The tuple after conversion with K is:")
print(my_result)

ผลลัพธ์

The tuple is: (56, 78, 91, 32, 45, 11, 23)
The tuple after conversion with K is: [56, 'Hi', 78, 'Hi', 91, 'Hi', 32, 'Hi', 45, 'Hi', 11, 'Hi', 23, 'Hi']

คำอธิบาย

  • กำหนด tuple และ string K

  • List comprehension: [elem for sub in my_tup for elem in (sub, K)]

    • วนแต่ละ sub ใน my_tup (แต่ละตัวเลข)
    • สร้าง tuple ชั่วคราว (sub, K) แล้ววน elem ใน tuple นั้น
    • ผลคือลำดับ: sub, K, sub, K, ...

วิธีอื่นที่อ่านง่ายกว่า:

my_result = []
for item in my_tup:
    my_result.append(item)
    my_result.append(K)
# หรือ
import itertools
my_result = list(itertools.chain.from_iterable((item, K) for item in my_tup))