A solution using reduce:
from functools import reduce
f = lambda x: f"f({x})" ## Just for example
g = lambda x: f"g({x})"
data = [1, 2, 3]
reduce(lambda acc, x: acc + [f(x), g(x)], data, [])
# => ['f(1)', 'g(1)', 'f(2)', 'g(2)', 'f(3)', 'g(3)']
This is a functional way of approaching the problem. A list comprehension is essentially another way of maping over data, but in cases such as this one where the mapping isn't one to one between the input and the output, reduce allows some wiggle room with how the output can be generated.
In general, any for implementation of the form:
result = []
for n in some_data:
result += some_operation()
## etc.
(I.e. for loops intended to produce a side effect on a list or similar data structure, the accumulator pattern)
Can be refactored into a declarative map/reduce/filter implementation.