Change language

Python | Add odd item twice

Here are some ways to achieve the above objective.

Method # 1: Using List Comprehension

# Python code to create a new list from the initial list
# with the condition to add each odd element twice.

 
# Initialization list

Input = [ 1 , 2 , 3 , 8 , 9 , 11 ]

  
# Using the comprehension list

Output = [elem for x in Input for elem in (x,) * (x % 2 + 1 )]

 
# print

print ( "Initial list is:’ " , Input )

p rint ( "New list is:" , Output)

Exit:

 Initial list is: ’[ 1, 2, 3, 8, 9, 11] New list is: [1, 1, 2, 3, 3, 8, 9, 9, 11, 11] 

Method # 2 : Using itertools

# Python code to create a new list from the initial list
# with the condition to add each odd element twice.

 
# Import

from itertools import chain

 
# Initialization list

Input = [ 1 , 2 , 3 , 8 , 9 , 11 ]

  
# Using comprehension list and chaining

Output = list (chain.from_iterable ([i] 

if i % 2 = = 0 else [i] * 2 for i in Input ))

 
# print

print ( "Initial list is:’ " , Input )

print ( "New list is:" , Output)

Exit:

 Initial list is: ’[1, 2, 3, 8, 9, 11] New list is: [1, 1, 2, 3, 3, 8, 9, 9, 11, 11] 

Method # 3: Using a Numpy array

# Python code to create a new list from the initial list
# with the condition to add each odd element twice.

 
# Import

import numpy as np

 
# Initialization list

Input = [ 1 , 2 , 3 , 8 , 9 , 11 ]

Output = []

  
# Using Numpy to repeat

for x in Input :

  ( Output.extend (np.repeat (x, 2 , axis = 0 ))

  if x % 2 = = 1 else Output.append (x))

 
# print

print ( " Initial list is: ’" , Input )

print ( "New list is:" , Output)

Exit:

 Initial list is: ’[1, 2, 3, 8, 9, 11] New list is: [1, 1, 2, 3, 3, 8, 9, 9, 11, 11] 

Shop

Gifts for programmers

Learn programming in R: courses

$FREE
Gifts for programmers

Best Python online courses for 2022

$FREE
Gifts for programmers

Best laptop for Fortnite

$399+
Gifts for programmers

Best laptop for Excel

$
Gifts for programmers

Best laptop for Solidworks

$399+
Gifts for programmers

Best laptop for Roblox

$399+
Gifts for programmers

Best computer for crypto mining

$499+
Gifts for programmers

Best laptop for Sims 4

$

Latest questions

PythonStackOverflow

Common xlabel/ylabel for matplotlib subplots

1947 answers

PythonStackOverflow

Check if one list is a subset of another in Python

1173 answers

PythonStackOverflow

How to specify multiple return types using type-hints

1002 answers

PythonStackOverflow

Printing words vertically in Python

909 answers

PythonStackOverflow

Python Extract words from a given string

798 answers

PythonStackOverflow

Why do I get "Pickle - EOFError: Ran out of input" reading an empty file?

606 answers

PythonStackOverflow

Python os.path.join () method

384 answers

PythonStackOverflow

Flake8: Ignore specific warning for entire file

360 answers

News


Wiki

Python | How to copy data from one Excel sheet to another

Common xlabel/ylabel for matplotlib subplots

Check if one list is a subset of another in Python

How to specify multiple return types using type-hints

Printing words vertically in Python

Python Extract words from a given string

Cyclic redundancy check in Python

Finding mean, median, mode in Python without libraries

Python add suffix / add prefix to strings in a list

Why do I get "Pickle - EOFError: Ran out of input" reading an empty file?

Python - Move item to the end of the list

Python - Print list vertically