2016-08-11 9 views
0

文字 "X"が出現するたびに改行を挿入するPython構文は何ですか?これは、以下の私のスプリットを持っていないリストオブジェクトを与えたPythonは文字 "X"の後に文字列に改行を挿入します

for myItem in myList.split('X'): 
    myString = myString.join(myItem.replace('X','X\n')) 
+2

どのように任意のXがあるだろうか? –

答えて

4
myString = '1X2X3X' 
print (myString.replace ('X', 'X\n')) 
2

Pythonの3.X

myString.translate({ord('X'):'X\n'}) 

translate()エラー属性辞書を可能にするので、一度に複数の異なる文字を置き換えることができます。

なぜtranslate()を超えてreplace()translate vs replace

のPython 2.7

myString.maketrans('X','X\n') 
+0

偉大な、それを知りませんでした... –

+1

@JacquesdeHooge UR歓迎、私は翻訳と交換の比較を追加しました。 – levi

+0

なぜdownvote? – levi

1

(エラーが言うように)リストには、何のsplitメソッドを持っていないを確認してください。

myListは、文字列のリストで、あなたがそれらの後、それぞれに'X\n''X'を交換したい、あなたはリストの内包表記を使用することができますと仮定:

new_list = [string.replace('X', 'X\n') for string in myList] 
1

あなたは、単にX」によってXを置き換えることができます\ @DeepSpaceにより示唆されるように、最も適切なのは、str.replaceあるようn」は

あなたの質問の内容に基づいて
myString.replace("X","X\n") 
0

、それが聞こえます。 @ leviの答えも適用可能ですが、使用するには大きすぎる大砲のビットかもしれません。 私はそれらをもっと強力なツールregexに追加しました。これは遅くて理解するのが難しいですが、実際には "X" - > "X \ n"の置換ではありませんが、あなたは考慮する必要があります。

詳細について
import re 
result_string = re.sub("X", "X\n", original_string) 

:あなたはXに分割した場合https://docs.python.org/2/library/re.html#re.sub

関連する問題