Это то, что вы хотите?
let array = ["red", "orange", "yellow", "green"]
let output = array.enumerated()
.map { $1 + " (\($0))" }
.joined(separator: ", ")
print(output) //red (0), orange (1), yellow (2), green (3)
Если последний индекс не должен быть включен, то вот решение:
let output = (array.dropLast().enumerated()
.map { $1 + " (\($0))" }
+ [array.last ?? ""])
.joined(separator: ", ")