私は持っている
k= (('answer ', ' Answer the call for a channel(answer )'), ('att_xfer ', ' Attended Transfer(att_xfer )'), ('bind_digit_action ', ' Bind a key sequence or regex to an action.(bind_digit_action )'))
余分なスペースをすべて削除したい。どうやってやるの
私は持っている
k= (('answer ', ' Answer the call for a channel(answer )'), ('att_xfer ', ' Attended Transfer(att_xfer )'), ('bind_digit_action ', ' Bind a key sequence or regex to an action.(bind_digit_action )'))
余分なスペースをすべて削除したい。どうやってやるの
「余分なスペース」を意味する場合、各文字列の最初と最後のスペース:
k = tuple(tuple(b.strip() for b in a) for a in k)
文字列内の他の「余分なスペース」 ( (answer )
=>など(answer)
) を削除する場合は、さらにルールを定義する必要があります。
すべての空白を削除する場合:
tuple(tuple("".join(i.split()) for i in a) for a in k)
アウト:
(('answer', 'Answerthecallforachannel(answer)'),
('att_xfer', 'AttendedTransfer(att_xfer)'),
('bind_digit_action',
'Bindakeysequenceorregextoanaction.(bind_digit_action)'))
または、結果としてタプルが必要ない場合:
from itertools import chain
["".join(i.split()) for i in chain.from_iterable(k)]
アウト:
['answer',
'Answerthecallforachannel(answer)',
'att_xfer',
'AttendedTransfer(att_xfer)',
'bind_digit_action',
'Bindakeysequenceorregextoanaction.(bind_digit_action)']
別の方法は次のとおりです。
tuple(map(lambda x:tuple(map(lambda y:y.strip(),x)),k))