14

重複の可能性:
Python で文字列を分割する

これを変更したい:

str = 'blue\norange\nyellow\npink\nblack'

これに:

list = ['blue','orange', 'yellow', 'pink', 'black']

for ループと while ループをいくつか試しましたが、実行できませんでした。次の要素を作成するトリガー中に改行文字を削除したいだけです。私は使用するように言われました:

list(str)

を与える

['b', 'l', 'u', 'e', '\n', 'o', 'r', 'a', 'n', 'g', 'e', '\n', 'y', 'e', 'l', 'l', 'o', 'w', '\n', 'p', 'i', 'n', 'k', '\n', 'b', 'l', 'a', 'c', 'k']

この後、私は使用します.remove()が、1つだけ'\n'が削除され、コードは色を綴るのがより複雑になります.

4

1 に答える 1

20

あなたがしたいyour_str.splitlines()、またはおそらくただyour_str.split('\n')

for ループの使用 -- 教育用のみ:

out = []
buff = []
for c in your_str:
    if c == '\n':
        out.append(''.join(buff))
        buff = []
    else:
        buff.append(c)
else:
    if buff:
       out.append(''.join(buff))

print out
于 2012-11-01T01:28:53.093 に答える