Pythonのテクニック-stringとlistの間の相互変換

4777 ワード

本論文ではstr回転listの多様な状況の解決方法とlist回転strの解決方法を記録した.
目次
  • 1. string to list
  • 2. list to string


  • 1. string to list
    ケース1:
    '[1,2,3,4]'  ->  [1,2,3,4]

    ここではpythonの方法eval()を巧みに使います.菜鳥チュートリアルの説明によると、この関数は文字列式を実行し、式の値を返します.たとえば、eval('3*7')21という値を返します.
    In [1]: eval('[1,2,3,4]')
    Out[1]: [1, 2, 3, 4]

    巧みですね.
    ケース2:
    '1,2,3,4'  ->  [1,2,3,4]

    これは難しくありません.ネットユーザーたちの集思広益によると、多くの解法があります.
    In [2]: list(map(int, '1,2,3,4'.split(',')))
    Out[2]: [1, 2, 3, 4]
    
    In [3]: [int(i) for i in '1,2,3,4'.split(',')]
    Out[3]: [1, 2, 3, 4]
    
    In [4]: list(eval('1,2,3,4'))
    Out[4]: [1, 2, 3, 4]

    ケース3:
    ['1','2','3',4']  ->  [1,2,3,4]

    これも難しくありません.ネットユーザーたちの集思広益によると、多くの解法があります.
    In [5]: list(map(int,['1','2','3','4']))
    Out[5]: [1, 2, 3, 4]
    
    In [6]: [int(i) for i in ['1','2','3','4']]
    Out[6]: [1, 2, 3, 4]

    2. list to string
    [1,2,3,4]  ->  '1 2 3 4'
    In [1]: ' '.join(str(i) for i in [1,2,3,4])
    Out[1]: '1 2 3 4'