基本的には、ユーザーに文字列をコンソールに入力してもらうのですが、その文字列が非常に長く、改行も多く含まれています。 ユーザーの文字列を受け取って、すべての改行を削除して1行のテキストにするにはどうすればいいでしょうか。 文字列を取得する方法はとても簡単です。
string = raw_input("Please enter string: ")
ユーザーから文字列を取得するのに、何か別の方法があるのでしょうか? MacでPython2.7.4を使用しています。
P.S. 明らかに私は初心者なので、たとえ解決策が最も効率的でなくても、最もシンプルな構文を使ったものであればありがたいです。
raw_inputで改行を入力するにはどうしたらいいですか?しかし、削除したい文字が含まれている文字列があれば、それを
replace` すればよいのです。
>>> mystr = raw_input('please enter string: ')
please enter string: hello world, how do i enter line breaks?
>>> # pressing enter didn't work...
...
>>> mystr
'hello world, how do i enter line breaks?'
>>> mystr.replace(' ', '')
'helloworld,howdoienterlinebreaks?'
>>>
上の例では、すべてのスペースを置き換えました。文字列 '̫͡
は改行を表しています。また、`r
はキャリッジリターンを表しています(Windowsをお使いの方は、これらの文字が出てくるかもしれませんが、2回目のreplace
で処理してくれます!)。
基本的には
# you probably want to use a space ' ' to replace `\n`
mystring = mystring.replace('\n', ' ').replace('\r', '')
また、変数の名前を string
とするのは良くないことに注意してください。もうひとつの名前は、私は避けたいと思っていますが、時々は使いたいと思っています。file`です。同じ理由からです。
文字列置換を試してみてください。
string = string.replace('\r', '').replace('\n', '')