Python | Find mixed combinations of string and list

Method # 1: Using loop + enumerate () + replace ()
This task can be accomplished using a combination of the above functions. In this, we simply iterate over each element of the character list and insert each combination using brute force.

# Python3 code to demonstrate how it works
# Mixed combinations of string and list
# using loop + enumerate () + replace ()

 
# initialize list and string

test_list = [ "a" , "b" , "c" ]

test_str = "gfg"

 
# print original list and line

print ( "The original list:" + str (test_list))

print ( " The original string: " + test_str)

 
# Mixed combinations of line and list
# using loop + enumerate ( ) + replace ()

res = []

for idx, ele in enumerate (test_str):

  res + = [test_str [: idx] + test_str [idx:] .replace (ele, k, 1 )

for k in test_list]

 
# print result

print ( "The list after mixed Combinations:" + str (res))

Output:

The original list: [`a`, `b`, `c`]
The original string: gfg
The list after mixed Combin ations: [`afg`, `bfg`, `cfg`, `gag`, `gbg`, `gcg`, `gfa`, `gfb`, `gfc`]

Method # 2: Using List Comprehension
The above functionality can be used to accomplish this task. In this, we provide a one-line alternative using comprehension.

# Python3 code to demonstrate how it works
# Mixed combinations of string and list
# using comprehension list

 
# initialize list and string

test_list = [ "a" , " b " , " c " ]

test_str = "gfg"

 
# prints the original with squeak and string

print ( "The original list: " + str (test_list))

print ( "The original string:" + test_str)

 
# Mixed combinations of line and list
# using comprehension list

res = [test_str [: idx] + ele + test_str [idx + 1 :]

  for idx in range ( len (test_str)) for ele in test_list]

 
# print result

print ( "The list after mixed Combinations:" + str (res))

Output:

The original list: [`a`, `b`, `c` ]
The original string: gfg
The list after mixed Combinations: [`afg`, `bfg`, `cfg`, `gag`, `gbg`, `gcg`, `gfa`, ` gfb `,` gfc `]