Python Forum
Trying to write func("abcd") -> "abbcccdddd"
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Trying to write func("abcd") -> "abbcccdddd"
#8
(Oct-23-2020, 09:57 PM)bowlofred Wrote: Although it's at the front, it's still "inside the loop". This is just a syntax for a generator comprehension, similar to a list comprehension.

letter_generator = (i*char for i, char in enumerate(s, start=1))
Is similar to:

def gen_expression(iterable):
    for i,char in enumerate(iterable, start=1):
        yield i*char
letter_generator = gen_expression(s)
And then the generator will hand out the sequence as requested.

Thanks. I came up with some similar which gets closer to my understanding of the function:

def tag(s):
    res = ''
    for i, char in enumerate(s, start=1):
        res += ''.join(i*char)
    return res

print(tag('tom'))
Reply


Messages In This Thread
RE: Trying to write func("abcd") -> "abbcccdddd" - by ebolisa - Oct-24-2020, 02:25 AM

Possibly Related Threads…
Thread Author Replies Views Last Post
  How can I print from within actor(func) ?? Pedroski55 2 196 May-01-2024, 05:35 AM
Last Post: Pedroski55
  How to output one value per request of the CSV and print it in another func? Student44 3 1,371 Nov-11-2022, 10:45 PM
Last Post: snippsat
  Func Animation not displaying my live graph jotalo 0 1,586 Nov-13-2020, 10:56 PM
Last Post: jotalo
  call func from dict mcmxl22 3 2,890 Jun-21-2019, 05:20 AM
Last Post: snippsat
  About [from FILE import FUNC] Nwb 7 3,663 Apr-21-2019, 02:46 PM
Last Post: snippsat
  Executing func() from a different folder ebolisa 2 2,396 Jan-14-2019, 10:18 AM
Last Post: ebolisa
  Correct number wrong position func. albry 5 6,065 Jan-11-2019, 04:01 PM
Last Post: Larz60+
  How can I return my list from a func? Mike Ru 3 3,129 Oct-22-2018, 01:15 PM
Last Post: buran
  list func in lambda mepyyeti 1 2,932 Mar-10-2018, 09:07 PM
Last Post: buran
  return variable in func mepyyeti 1 2,649 Mar-01-2018, 02:30 AM
Last Post: Larz60+

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020