Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

As written, the code will write the response string out immediately. The for x in version will block until end-of-input.


Er... no. No it absolutely wouldn't block until end-of-input.

If list comprehensions were being used to precompute the output and the whole list printed from (what you seem to be thinking of) then perhaps yes, but any of:

    for x in sys.stdin:
        ...
or

    [... for x in sys.stdin]
(where ... is print(func(x)) as per the post)

as per the GP post will print response strings as the input comes in.


The two versions are functionally identical, which is why the shorter version without repeated code is better.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: