I’m trying to split a string:
'QH QD JC KD JS'
into a list like:
['QH', 'QD', 'JC', 'KD', 'JS']
How would I go about doing this?
Answers:
Thank you for visiting the Q&A section on Magenaut. Please note that all the answers may not help you solve the issue immediately. So please treat them as advisements. If you found the post helpful (or not), leave a comment & I’ll get back to you as soon as possible.
Method 1
>>> 'QH QD JC KD JS'.split() ['QH', 'QD', 'JC', 'KD', 'JS']
Return a list of the words in the
string, usingsepas the delimiter
string. Ifmaxsplitis given, at most
maxsplitsplits are done (thus, the
list will have at mostmaxsplit+1
elements). Ifmaxsplitis not
specified, then there is no limit on
the number of splits (all possible
splits are made).If
sepis given, consecutive
delimiters are not grouped together
and are deemed to delimit empty
strings (for example,
'1,,2'.split(',')returns['1', '', '2']). Thesepargument may consist of
multiple characters (for example,
'1<>2<>3'.split('<>')returns['1', '2', '3']). Splitting an empty string
with a specified separator returns
[''].If
sepis not specified or isNone, a
different splitting algorithm is
applied: runs of consecutive
whitespace are regarded as a single
separator, and the result will contain
no empty strings at the start or end
if the string has leading or trailing
whitespace. Consequently, splitting an
empty string or a string consisting of
just whitespace with aNoneseparator
returns[].For example,
' 1 2 3 '.split()
returns['1', '2', '3'], and' 1 2 3 '.split(None, 1)returns['1', '2 3 '].
Method 2
Here the simples
a = [x for x in 'abcdefgh'] #['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h']
Method 3
Maybe like this:
list('abcdefgh') # ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h']
Method 4
Or for fun:
>>> ast.literal_eval('[%s]'%','.join(map(repr,s.split())))
['QH', 'QD', 'JC', 'KD', 'JS']
>>>
ast.literal_eval
Method 5
You can use the split() function, which returns a list, to separate them.
letters = 'QH QD JC KD JS' letters_list = letters.split()
Printing letters_list would now format it like this:
['QH', 'QD', 'JC', 'KD', 'JS']
Now you have a list that you can work with, just like you would with any other list. For example accessing elements based on indexes:
print(letters_list[2])
This would print the third element of your list, which is ‘JC’
All methods was sourced from stackoverflow.com or stackexchange.com, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0