Loading collection data...
Collections are a way for you to organize kata so that you can create your own training routines. Every collection you create is public and automatically sharable with other warriors. After you have added a few kata to a collection you and others can train on the kata contained within the collection.
Get started now by creating a new collection.
I'm going to be very blunt because I'm growing very sick of comments like these. If this solution is bad practice or hardcore to you, then you shouldn't be doing Python. Plain and simple. There are many scenarios where one liners are bad, and this is not one of them. Under most style guides, this is the way to solve this problem. This is how it is done in production. Your solution has poor performance and looks like spaghetti - the gall to try and knock on the doors of better solutions talking about "not smart, but abstruse and overcomplicated." It is not the job of others to use simple language constructs to appease you. Look inwards and try to explore the language better.
Some people like to write one-liners as a challenge, not everyone is setting out to write perfectly readable enterprise-level code. It's not their fault other people upvote them. Let people have their fun without the lecture.
Not to mention, as far as python goes, this really isn't unreadable, it's pretty clear what this does.
Buddy, what is the overcomplication of this solution? Everything is simple and clear
no it works for all kinds of words. the reason it works is calling split(' ') on strings with double or arbitrarily spaced characters produced empty strings in the return value, and when you call .join() all the empty strings are joined back with spaces between them. the empty strings from splitting multi-spaced strings act as placeholders for when the string is re-formed so the spacing is preserved
interesting
Writing everything in one line is a bad practice. It's just bragging about its tricky hardcore solution. It's too bad that many people called this solution "best practice" and "clever". This is a bad practice. And the solution is not smart, but abstruse and overcomplicated.
The solution from fortlasagna is much better. He generally does the same thing. But his code is much better structured and much better readable. Here he really shows the best practice.
I missed the "All spaces in the string should be retained" part!
Other than that I got it! Wohoo!
This is a great solution for double and single spaces! But for anything more you'll need to utilize RegEx
If you split for example "a__b" (double space instead of underscores) into a list, it will result in ["a", "", "b"].
When you join it later, there will be one space between "a" and the empty string "" - and another space between the empty string and "b". Therefore you end up keeping the double space like in the original string.
This comment is hidden because it contains spoiler information about the solution
A constraint that the strings wouldn't contain triple-spaces or even larger, was not stated so this solution also works well for those cases (I just tested) - well done.
I managed to solve after like an hour by adding space as a seperator but I don't know why it actually works this way
This comment is hidden because it contains spoiler information about the solution
This comment is hidden because it contains spoiler information about the solution
This is the first question after 50+ challenges where I got the exact same solution as the top one.I would always get like the 3rd,4th best practice.
Just keep doing these and look at other people's solutions and try figure out their thought process.
Loading more items...