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

ผนวกองค์ประกอบคี่สองครั้งใน Python


ในบทความนี้ เราจะมาดูวิธีการนำรายการที่มีตัวเลขคี่เป็นองค์ประกอบ แล้วเพิ่มองค์ประกอบคี่เหล่านั้นซ้ำๆ ในรายการเดียวกัน ซึ่งหมายความว่าหากเลขคี่ปรากฏสองครั้งในรายการ หลังจากประมวลผลแล้ว หมายเลขคี่จะแสดงสี่ครั้งในรายการเดียวกันนั้น

สำหรับข้อกำหนดนี้ เราจะมีแนวทางมากมายที่เราใช้ for loop และ the in condition หรือเราขอความช่วยเหลือจากโมดูล itertools นอกจากนี้เรายังตรวจสอบเงื่อนไขคี่ด้วยการหารแต่ละองค์ประกอบด้วยสอง

ตัวอย่าง

from itertools import chain
import numpy as np

data_1 = [2,11,5,24,5]
data_2=[-1,-2,-9,-12]
data_3= [27/3,49/7,25/5]
odd_repeat_element_3=[]

# using for and in
odd_repeat_element = [values for i in data_1 for values in (i, )*(i % 2 + 1)]

print("Given input values:'", data_1)
print("List with odd number repeated values:", odd_repeat_element)

# Using chain from itertools
odd_repeat_element_2 = list(chain.from_iterable([n]
if n % 2 == 0 else [n]*2 for n in data_2))

print("\nGiven input values:'", data_2)
print("List with odd number repeated values:", odd_repeat_element_2)

# Using extend from mumpy
for m in data_3:
   (odd_repeat_element_3.extend(np.repeat(m, 2, axis = 0))
if m % 2 == 1 else odd_repeat_element_3.append(m))

print("\nGiven input values:'", data_3)
print("List with odd number repeated values:", odd_repeat_element_3)

การเรียกใช้โค้ดด้านบนทำให้เราได้ผลลัพธ์ดังต่อไปนี้:

Given input values:' [2, 11, 5, 24, 5]
List with odd number repeated values: [2, 11, 11, 5, 5, 24, 5, 5]

Given input values:' [-1, -2, -9, -12]
List with odd number repeated values: [-1, -1, -2, -9, -9, -12]

Given input values:' [9.0, 7.0, 5.0]
List with odd number repeated values: [9.0, 9.0, 7.0, 7.0, 5.0, 5.0]